Parallel computing is the way the world is moving, and computer science professor Libby Shoop and her students are in the vanguard of that trend.
Around 2005, according to Shoop, the computer chip industry said, in effect, We can’t continue to make chips faster because they generate too much heat, so we’re going to make multiple ‘core’ processors that work in parallel (dubbed multi-core chips).
Soon industry was crying out for graduates who could program in parallel, so Shoop and St. Olaf colleague Dick Brown wrote a grant to bring computer science curriculum up to speed. No longer would parallel computing be limited to graduate students in high-level courses with supercomputer access. Undergraduate computer science students also needed to be ready to program for the multi-core world—a world that couldn’t wait for a textbook.
Thus Shoop and her students have been developing modules for learning parallel computing, using multi-core computers and LittleFe, a unit of six motherboards networked to operate as a single cluster computer. (Massive computer clusters are known as “Big Iron,” and Fe is the symbol for the element iron, hence the name.) The suitcase-sized LittleFe is a smaller, more affordable unit on which students can learn parallel programming.
The effort is now supported by a second NSF grant with two primary objectives:
- To create more teaching modules for instructors
- To reach out to computer science faculty and create a community of those teaching parallel computing
For this second grant phase Shoop brought together three students for summer research: Yu Zhao ’14 (Beijing), Ivana Marincic ’15 (Vrbovec, Croatia), and Jordan Lee ’15 (St. Paul). Zhao worked on the project last year; Marincic and Lee both took Shoop’s first-year course in computer science and were eager to expand their CS knowledge.
Over the summer the group developed more modules for colleges—or anyone else—to use in learning parallel computing. The modules, which are free, are available at csinparallel.org and can be dropped into any computer science course.