CERN Computing Seminar

Design Patterns: establishing a discipline of parallel software engineering

by Dr Timothy Mattson (Intel Corp.)

Europe/Zurich
IT Auditorium (CERN)

IT Auditorium

CERN

Description

Many core processors present us with a software challenge. We must turn our serial code into parallel code. To accomplish this wholesale transformation of our software ecosystem, we must define established practice is in parallel programming and then develop tools to support that practice. This leads to design patterns supported by frameworks optimized at runtime with advanced autotuning compilers. In this talk I provide an update of my ongoing research with the ParLab at UC Berkeley to realize this vision. In particular, I will describe our draft parallel pattern language, our early experiments with software frameworks, and the associated runtime optimization tools.

About the speaker

Tim Mattson is a parallel programmer (Ph.D. Chemistry, UCSC, 1985). He does linear algebra, finds oil, shakes molecules, solves differential equations, and models electrons in simple atomic systems. He has spent his career working with computer scientists to make sure the needs of parallel applications programmers are met.

Tim has had the good fortune to work with brilliant people on truly great projects. Among these are:

  1. the first TFLOP computer (ASCI Red),
  2. the OpenMP API for shared memory programming,
  3. the OpenCL programming language for heterogeneous platforms,
  4. programming Intel's first TFLOP chip (the 80 core research chip), and
  5. the design and software architecture of Intel's 48 core research chip

In addition, Tim has been working with a community of pattern writers to create pattern languages for parallel programming. This work builds on his book "Patterns for Parallel Programming" (written with Professors Beverly Sanders and Berna Massingill and published by Addison Wesley).

 


Organised by: Sverre Jarp and Miguel Angel Marquina
Computing Seminars /IT Department