Multicore education: pieces of the parallel puzzle

  • Authors:
  • Joel C. Adams;Daniel J. Ernst;Thomas Murphy;Ariel Ortiz

  • Affiliations:
  • Calvin College, Grand Rapids, MI, USA;University of Wisconsin - Eau Claire, Eau Claire, WI, USA;Contra Costa College, San Pablo, CA, USA;Tecnológico de Monterrey, Edo, Mexico

  • Venue:
  • Proceedings of the 41st ACM technical symposium on Computer science education
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Although Moore's Law continues to hold at present, Moore's Dividend - where software developers could rely on increasingly faster CPUs to make their software faster - has expired [5]. Instead of manufacturing uni-core CPUs with faster clocks, hardware manufacturers are producing multi-core CPUs, and many-core CPUs (with 32 or more cores) have begun appearing. Traditional sequential applications will not take advantage of these new hardware capabilities, and thus will not run any faster. To gain performance on these new and future hardware platforms, applications must be designed and written in pieces that run simultaneously on different cores. Ideally, the performance of such parallel applications should scale as the number of available cores increases. As computer science educators, it behooves us to prepare our students for this brave new parallel world. In this session, the panelists will discuss different aspects of doing so, including: " How do we integrate parallelism into the CS curriculum? What aspects of parallelism do we cover, and where? " What available technologies (e.g., programming languages, libraries, etc.) facilitate parallel application development? " What resources are available for CS faculty members to learn how to design and build parallel applications? Each panelist will focus on one of these aspects of the problem.