Storage Informer
Storage Informer

Summer School for Parallel Programming at University of Illinois U-C.

by on Jul.20, 2009, under Storage

Summer School for Parallel Programming at University of Illinois U-C.

I spent a week in late June 2009 at the University of Illinois Urbana-Champaign&aposs Universal Parallel Computing Research Center Summer School for Multicore Programming. The UPCRC team produced a top notch event that immersed all of the participants in the fundamental of parallel programing.

UPCRC Co-Director Marc Snir kicked it off with an Introduction to Parallelism. His broad overview touched on many of the classic issues and opportunities facing all developers as they refactor their sequential code (refactoring is the process of changing the structure of an application with changing its external function).

Professor Snir stressed that we need to write applications that scale and address the nasty issue that arise from multiple processor using shared memory.  He presented the three programming levels and the pros and cons of each approach:

  • Do it yourself (Pthreads & POSIX threads)
  • Framework for parallel tasks (Java parallel framework, Threading building blocks (C++), C# TPL)
  • Parallel Languages (Java, C#, OpenMP, Ct)

Professor Danny Dig then covered the topic of Parallelism with Java and Code Refactoring.

Dr. Clay "Master of the Parallel Universe" Breshears introduced the class to OpenMP & Intel Threading Building Blocks. Both of his talked centered on shared memory control with each of the frameworks.

Dr. David Padua presented Data Parallelism and Implicit Parallelism.

UPCRC Co-Director Wen-mei Hwu presented an over view of CUDA.

Dr. Snir then reviewed and compared the programming models presented and discussed mechanisms for implementing a parallel programming model. He also covered desired features in parallel programming models. The class then joined in a discussion of how features of applications and of parallel architecture influence the choice of model.

UPCRC sponsors Intel & Microsoft both presented research and products in development.

Bob Kuhn, Intel Software Product Engineer, discussed Intel Parallel Studio and processor technology roadmap. Daniel Moth presented the recently beta released of Visual Studio 2010 and demonstrated the newest C# libraries and code/memory/processor analysis tools.

One of the best parts of the program was the hands on lab time. All of the students engaged in labs using Java, OpenMP, TBB, CUDA & Ct with lecturers and teaching assistants close by to guild students through any issue or technical gap. Each of the labs started after the topic lecture and many students took advantage of after dinner lab hours to complete each of the assignment. It had been a while since I spent an evening in the lab debugging code. It kind of make me nostalgic for those bitter sweet college days.

In addition to the great learnings it was also a great opportunity to meet and learn from all the class participants. The whole class shared breakfast, lunch and dinner together for the whole week and spent Thursday evening at the University of Illinois Student Union relaxing over billiards & bowling.

It has been a few weeks since the program concluded and I&aposve had some time to reflect upon my experience. Kudos to the entire UPCRC team most especially Mark Smith, Cheri Helregel, & Andrea Whitesell who made all of the participants feel comfortable, engaged, well feed and focused on the learning.


:, , , , , , , , , , , ,

Leave a Reply

Powered by WP Hashcash

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Visit our friends!

A few highly recommended friends...