Cilk Plus PACT11 Tutorial

Submit New Article

September 16, 2011 9:00 PM PDT


Parallel Programming with Cilk Plus using the Intel Compiler


A Cilk Plus tutorial at PACT 2011 [link]
Presented by William Leiserson [email] from the Intel Cilk Team

Abstract:


The Intel Compiler now supports two extensions to C/C++ for parallel programming: Cilk and Array Notation, collectively called Cilk Plus. Cilk expresses fork-join parallelism, a way to exploit multiple cores in a way that preserves serial semantics. CEAN expresses vector parallelism, a way to exploit SIMD hardware on a core. This tutorial serves as an introduction to these extensions, and how to combine them effectively, so that the power of modern multicore systems can be harnessed in a straight-forward way. It also advocates a programming methodology based on cache-oblivious techniques that enables simple efficient use of complex memory hierarchies.



Outline:


  • Introduction
    • Overview of Parallel Hardware (Multicore, SIMD, GPU)
    • Overview of Software Parallelization Techniques
      • Task-level parallelism: Pthreads, OpenMP, TBB, Cilk
      • SIMD: Intrinsics, automatic, pragmas, array notation
  • Task Parallelism with Cilk
    • Apply the Cilk keywords to expose parallelism in a sequential application.
    • Use the Cilkview parallelism analyzer to optimize the application.
    • Use the Cilkscreen race detector to identify race bugs.
  • Instruction Parallelism with Array Notation
    • Learn array section syntax.
    • Define parallel operations and function calls.
    • Gather, scatter, and reductions.
    • Elemental function specification.
  • Programming Methodologies
    • Combining Cilk and array notation.
    • Cache-oblivious techniques.



Speaker Bio:


William Leiserson got his B.S. in Computer Science from RPI, and his M.S. in Computer Science from RIT. He joined Cilk Arts in 2007, working on the Cilk++ compiler and tools. Along with the rest of the engineering team, he joined the Cilk runtime and tools project at Intel Corporation when Cilk Arts was acquired in 2009.