Storage Informer
Storage Informer

Intel, SEPARS, and ICSE 2009 (Vancouver, British Columbia)

by on Jun.19, 2009, under Storage

Collaboration: Intel, SEPARS, and ICSE 2009 (Vancouver, British Columbia)


Mike Wrinn and I (both of Intel) gave a joint, day-long session last month in parallel programming concepts, tools, and techniques in a planned, tight collaboration with Walter Tichy and Victor Pankratius, both of the University of Karlsruhe, Germany.  We gave this session (a combined lecture and hands-on workshop) during the week of the 31st International Conference on Software Engineering (ICSE) which was held May 16th through the 24th, 2009, in Vancouver, British Columbia.

You may or may not know that ICSE itself is an international, provocative, 21st century marvel of software talent, diversity, and enthusiasm.  There were over 1,100 registrations this year, and attendees chose sessions to attend from the hundreds available from four general tracks: research papers, research demonstrations, software engineering in practice (SEIP), and new ideas and emerging results (NEIR).

We are talking state of the art material here, from some of the sharpest software minds, companies, and universities on the planet: extremely interesting stuff.  (If you have never attended an ICSE, you really should someday…)

Walter, Victor, Mike and I worked for several months to create the abstract which ICSE was to ultimately accept and promote. A planned series of related morning lectures and afternoon hands-on labs, we were the highest-attended tutorial but also, ranked highest both in “buzz” at the convention and in actual pre-convention registrations.

While modesty might otherwise forbid, I mention this because it seems fairly clear that we did something right. Which is to say: when Intel employees partner with our fellow software community members? The results can be powerful!

Attend the tale…


The Plan

I was presenting at a Software Engineering for Parallel Systems (SEPARS) meeting last year in Stuttgart, Germany, the Intel perspective on “Just what do employers want  from graduates?” when I was approached by Victor Pankratius (and later, Walter Tichy) and asked if we might collaborate on something for ICSE 2009.

SEPARS is a working group and part of the Gesellschaft fuer Informatik e.V. (GI), the German Computer Science Society. Participation is open to everyone, and they explicitly seek interested people on an international level to participate. I’ve noted over the past year that one of their core interests is to encourage open and honest communication between members of academia and industry.  This is an excellent fit to Intel’s way of thinking, so, we got serious about a full-day event that would define the briefest possible overview of the substantial importance of parallel programming in today’s academic and industrial arenas, and, an inclusion of challenges and tools.

Anyway, we decided it was an excellent topic for an excellent venue. There was always a risk that ICSE wouldn’t pick us: but, we decided to give it a shot.

In case you’re not familiar with SEPARS, check them out:


The Implementation

Over the next few months we communicated steadily between Santa Clara, CA, USA, and Karlsruhe, Germany. Victor Pankratius stepped up to do most of the heavy lifting with regard to ICSE deadlines and abstracts. WAY TO GO, VICTOR! (He makes it look easy, actually.) After quite a few phone calls and emails and one convenient face to face meeting (Victor had business here in Santa Clara), we defined the details of all roles and content.  

Victor and Walter would handle the morning lecture sessions, one each, and Mike and I would handle the afternoon hands-on labs, also one each. The lectures and labs would be related of course, so the attendees got the concepts in the morning and practiced those concepts in the afternoon, on some fine hardware and state-of-the-art software tools.  Intel agreed to provide, implement, and ship the hardware – some fine dual-processor laptops – for the session. Allowing for a combination of some students who would prefer their own laptop and, others who would prefer to pair up, we had nice coverage.

Working with Victor and Walter was a dream, of course. They are extremely knowledgeable about modern parallel programming, and more specifically, about Intel’s powerful software tools.  The fit between their lecture and our labs was natural and spot on.

We submitted the abstract, and it was accepted. Further, a few months later, the actual registrations before the ICSE started were solid, and the session was solidified into the calendar. It was then that presentation at the event was “in stone” and we all made final reservations and preparations.

About three months had passed since our first meeting.


The Event

All the hardware showed up on time at ICSE, so the afternoon hands-on labs would happen per the plan. In the spirit of keeping things green, we had put all presentations and labs on RAM sticks, one per attendee (thus avoiding copying fees and piles of paper). Further: last minute changes were simple to make.

We started with 15 attendees in the morning, but by the end of the day there were 19 (always a good sign when the numbers increase).

Walter covered some important topics in lecture to get us started. He had picked the topic “The Multicore Software Challenge,” which of course covered paradigm shifts in computing, the evolution of parallel computers and CPUs, the role of parallelization, and of course, a listing of some of the basic challenges in parallel software writing.

Victor’s lecture was called “Transactional Memory versus Locks – A Comparative Case Study,” and included important topics such as the use of atomic transactions instead of explicit locks; a discussion of traditional prejudices against transactional memory; as well as a fascinating overview of case studies comparing the use of each methodology.

The afternoon labs, by Michael and me, covered OpenMP and Threading Methodologies. The students did a great job, and we went enough overtime with an informal “Birds of a Feather” session that I called that the meeting folks that had the room an hour after we were supposed to be done had to kick us out.  Fortunately, the ICSE staff helped us shutdown and break down the lab systems, and we were only in the way about 10 minutes total.

This was an excellent – if not very long – day!  



Well as you can guess the feedback from the attendees about the tutorial experience was uniform in its praise. In fact ICSE itself hadn’t provided a tutorial feedback form, so we improvised one on the spot (literally, there was probably about 105 years of combined teaching experience between the four of us, so, no biggie) and printed it out for use.  Students reported:

    • “I liked everything! It was a superb tutorial.”
    • “I liked the hands-on session. Thanks to Intel and guys helping around.”
    • “Good overview.”
    • “I liked direct contact with the company that developed the tools.”
    • “I liked the mixture of theoretical introduction and practical exercises, and the course materials on USB stick.”
    • “I liked …kind of the hands-on stuff and playing around with actual tools.”
    • “I liked the organization of the tutorial, clear and to the point.”

We also got some great ideas for improvement, as well, as some attendees took our requests for that seriously, as we intended.

Since ICSE last month, we’ve received four related invitations to provide the same or a similar tutorial, including the ICSE management itselfasking us to strongly consider presenting again at ICSE 2010, which is in Capetown, South Africa.

Let me summarize: when we partner, we win. GREAT JOB, guys!


For more feedback on ICSE 2009 Vancouver, check it out:



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

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...