A first session of the ALICE
Workshop on advanced programming was held 4th-6th December at
CERN. The intent of the workshop was to teach advanced
programming techniques to the physicists and programmers who are
working on the most critical data source in the ALICE detector -
the High-Level Trigger.
On the first day,
Sverre Jarp, CERN openlab CTO, delivered an introduction to
many-core programming and Volker Lindenstruth spoke about
computer architecture.
Timm M. Steinbeck organized a
tutorial focusing on debugging and general techniques the second day of the workshop.
A second tutorial, on SIMD
programming, was organized on the third day by
Havard Bjerke, CERN openlab fellow. The SIMD programming
tutorial was split into lecture and hands-on sessions, beginning
with some background on Intel's SSE standards and parallel
programming. In a set of hands-on sessions, the attendees were
given the opportunity to try some high-precision performance
measurement techniques, including Perfmon2, and were taught
about a range of options for SIMD programming provided by
Intel's and GNU's compilers. By solving a set of problems using
SIMD, the attendees were introduced to some SSE techniques and
could see both the benefits and limitations of SIMD programming.
They were also shown some glimpses of the future possibilities
for SIMD. The tutorial ended with a competition for creating the
fastest possible implementation of Game of Life, using all the
techniques provided in the previous sessions. A copy of the
multi-core programming book, Intel Threading Building Blocks was
awarded to the winner of the competition.
Various universities connected to
the ALICE experiment plan to hold this workshop in a near
future.
Havard Bjerke
CERN
|