A Sea Change in Computer Science Education

By Paul Steinberg (Intel) (35 posts) on August 30, 2010 at 3:39 pm

After decades of sturm und drang over whether or not to include parallelism in the undergraduate computer science curriculum, we can announce definitively that battle is over. Parallelism is here, and it already abides.
Fortunately, we are not left staring into the abyss. Academia, Industry and Developers are cooperating to help define what the new landscape (or seascape) should look like. While the details are still coming into focus, certain aspects now dominate the discussion:

  • We should get beyond thinking about teaching “parallel programming” -- it’s all just programming.
  • Parallelism must be introduced early into the curriculum - no later than second year, and it must inform all relevant courses.
  • New focus must be paid to architecture - but not the same architecture we’ve been teaching for years.
  • Design patterns will take on increasing importance.
  • Parallel models are no longer in their infancy - some are mature and can be widely adopted.
  • Hiring managers are looking for general knowledge of parallelism more than specific tool sets.
  • As educators, we must prepare our students to make the decisions that industry demands - the tools, models, and patterns will lead our way forward.

Agree? Disagree? Good.
We’re going to be having a conversation about this at the IDF education panel “Navigating in a Sea of Cores” on Monday, September 13th. We have representatives from industry and from academia on the panel, and expect to have a lively discussion there continuing through lunch afterwards.

http://idfcommunity.intel.com/planner/SessionCatalog.aspx?track=(ACA).

Free passes are available to educators -Enter the code ACAWEB1 when you register.

For those of you who can’t attend, or for those who want to dry-lab the discussion, we’re also going to have a series of blog posts by some of the contributors. We’ll also be adding links to those further discussions here, so you can just check back to keep up to date!

Categories: Academic, Parallel Programming

For more complete information about compiler optimizations, see our Optimization Notice.

Comments (7)

August 30, 2010 8:47 PM PDT

wolfmurphy
wolfmurphyTotal Points:
1,575
Black Belt
I certainly believe the writing is quite clearly on the wall.

I'm not sure I'd speak of battle's won, for it makes it sound as if nothing remains to be done.

From my vantage point as community college CS faculty, I am dependent on matching step to the curricula of my surrounding four-year universities, as well as my self imposed constraint of wanting parallel material integrated in the textbooks I use, which I am working on relaxing.

Perhaps in the spirit of the Sea Change title, I should see us as explorers and pioneers navigating sometimes rough seas with the lucky crows nest reports of land in sight.
August 31, 2010 3:48 PM PDT

Clay Breshears (Intel)
Clay Breshears (Intel)Total Points:
30,126
Black Belt
I'm with Tom in that I don't think the battle has been won. (I remember a past President making a big deal about accomplishing the combat mission he started that wasn't actually over until recently. :-) Sitting in my concrete bunker I still hear anecdotal tales about generals (faculty) that are able to keep parallelism out of their curriculums. Parallel programming has surely made a beach head and is marching along throughout the world. It is just a matter of time before those waves of parallelism (to change metaphors) erode away the resistance of any recalcitrant clams still buried in the seabed.
August 31, 2010 6:06 PM PDT

Paul Steinberg (Intel)
Paul Steinberg (Intel)Total Points:
20,711
Community Manager
I may have misspoke (allusion to another past president for the grey beards among us). I did not mean that the battle has been won, but that that he battle field is clear. The platform is many core, and often heterogeneous; this is where curriculum efforts must be directed. The question of how to craft a curriculum for complex platforms is still not resolved, though we may be seeing the way ahaed a bit more clearly. I look forward to hearing more from both of you at IDF soon.
September 2, 2010 11:45 AM PDT

Paul Steinberg (Intel)
Paul Steinberg (Intel)Total Points:
20,711
Community Manager
Kevin Goldsmith of Adobe has posted a response to this blog

" . . . If academia treats parallel programming and data structures like a specialized field of study, walled off into a couple courses and ignored by the general curricula, it will be doing a disservice to its students. A thorough grounding in parallel algorithms, data structures, computer hardware and theory integrated throughout the computer science curriculum is required.

While parallel programming is now a fact of life for software, hardware architectures and programming models are still evolving. Understanding the parallel programming concepts, algorithms and patterns and how they map to current hardware is far more important than the syntax or usage of any development library. . . . "
See more here http://blogs.adobe.com/kevin-goldsmith/2010/08/parallelism-a..... 91310.html
September 3, 2010 3:18 PM PDT

Michael McCool (Intel)
Michael McCool (Intel)Total Points:
2,686
Green Belt
I agree that there has been a convergence in how to think about parallelism, and a maturation of the tools to support its use. There is still a long, long way to go, however. The assumption of serial execution runs deep through all of CS, from the design of algorithms to the memory abstractions used by programming languages. CS educators need to take the challenge seriously in order to ensure that new CS graduates will have the appropriate skills and knowledge to write reliable and efficient software in this new context.

In advance of my attendance at this panel, I have also put up a blog post outlining some of my thoughts on this, in particular on the role of appropriate abstractions in dealing with parallelism: http://software.intel.com/en-us/blogs/2010/09/03/parallelism..... straction/
September 12, 2010 5:47 PM PDT

Ryan Newton (Intel)
Ryan Newton (Intel)Total Points:
1,145
Brown Belt
I'm pretty pro-abstraction myself, with all the caveats that Michael describes. My own response on this thread can be found here:

http://software.intel.com/en-us/blogs/2010/09/12/idf-paralle.....omorrow-2/
July 12, 2011 6:36 AM PDT


seema
nice....!

Trackbacks (10)


Leave a comment  

To obtain technical support, please go to Software Support.
Name (required)*

Email (required; will not be displayed on this page)*

Your URL (optional)


Comment*