TechPack Students
From Education
Note: This document was pulled from EAPF's shared folder on June 2, 2010, and may not accurately reflect its current state.
Note: The conversion process from Docs -> Wiki may result in some unusual formatting.
Charge for subgroup:
- Identify Target audience(s)
- Pick 3 or 4 specific instances of people we want to be addressed by this group -- for example, game console developers for the dev TechPack.
- Identify Capability (Tool/Knowledge) requirements for each target audience.
- Languages, types of parallelism, etc.
- Fill in examples of sources for material to fulfill requirements
- Existing websites, books, ACM course material, etc.
Student Targets
lower division: understanding the difference between sequential parallel programming, introduced to parallel algorithms and data structures. Computer architectures with Parallel notions. Including modern architectures and memory hierarchy
upper division: Approaches how to write parallel programs. choosing discipline directions w/in CS. Operating Systems, Languages/Compilers, Architecture, Graphics, Information Systems (ACM has the divisions), etc.
Graduate- applying parallelism to solve a problem for their PhD, produce theory, investigate case studies to see examples in larger code. Guided bibliographies
Life-long learning/DIY: Clear description with suggested path guiding you in to areas of key learning. Tasks with goals for them to do
High-school: Examples, Exercises (ways to determine growth/success), Problem Solving excercises.
Elements w/in the TechPack
Overview Topics(Distinct blurbs on ea): Parallelism- what it is, why, myths and mixconceptions, Parellelism “gotcha’s”, Architectures, (eg. shared memory parallelism, distributed memory parallelism, GPU’s), Programming Interfaces, (eg. Open MP, MPI, CUDA, OpenCL) Algorithmic requirements, Design Patterns, description of the hardware platforms and languages with pros and cons, Policies/ Best Practices, Ethics of contributing to opensource
Gaming- using the game engines, creating/building the game engine
Selection of different engines
Graphics
Computer Systems (Language, hardware design, Systems)
HPC- Engineering and science applications (chemisty, physics, bio sci, geo sciences, Humanities, Arts and Social Science, Business/Finance)
Self Paced Section:
Programming Examples, Code Samples
Hands on pieces- working code to manipulate, broken code to fix
Instructables type site around some of the learning tools: Beagle Board (2 different processors), Open-ended
Additional Resources:
Communities, Open Source communities, User Groups
Internship, training and job opportunities
Where can you get access to hardware and software for education?
Area/ motivation to contribute to the site.
Capabilities
Scratch and Alice- Graphic structural languages. 2 and 3D
Wonderland
Introductory Usage Exemplars:
- Parallelism for PC game
- data vs. task parallelism
| Arch/OS | Graphics | Web/Data | PL/SE | |