These events can show non-coders new potential, teach effective software development practices, help students acquire specific technology and interpersonal skills, and bridge the gap between academia and the real world. In school, you learn and then apply; in the real world, you have to apply without learning. These events help participants “learn how to learn,” learning through application.
Parallelism delivers the performance High Performance Computing (HPC) requires. The parallelism runs across several layers: super scalar, vector instructions, threading and distributed memory with message passing. OpenMP* is a commonly used threading abstraction, especially in HPC. Many HPC applications are moving to a hybrid shared memory/distributed programming model where both OpenMP* and MPI* are used.