Version 0.6

Vortrag: The Supercomputer in Front of You

Use your Flop/s - Status of FOSS, Many-Core & C++11

Event large

This talk is about data parallelism, FOSS software, many-core architectures and C++ meta programming and why we need it for open source projects. The speakers will relate to their experience in high-performance computing and scientific free software project leads over the last years, helping you to get your data crunched faster.

We start with a short introduction to indirect, pragma based drop-in languages like OpenMP and OpenACC that can bring your code up to speed in no time; just before telling you that those are not for the cool kids. The latter like explicit parallelism and abstracting it into kernels that can compile to multi-core CPUs, pretty-long-SIMD vector instructions and many-core architectures like GPUs without being copy-paste-rewritten, avoiding maintenance hell.

It's time to face reality: our favourite programming class has lied to us. Serial programming is dead and waiting even another single hour for the result of ./a.out, processing some GB of data via a for loop, ~50 virtual interfaces and a nasty #include is as exciting as watching paint dry. Even worse, bridging the time as in the old days with yet another coffee will probably lead to a cardiac infarction since coffee machines just became so incredibly efficient and to be honest - we just finished three Mate.

We show why compiling nastily templated C++ code for 5 minutes and running it for one is cool, but vice versa is not. We will check out high-level feature support in FOSS compilers for efficient many-core coding and what one (might) still lack, e.g., to get on all CPUs/GPUs with C++. We will then show you easy to follow rules for data parallelism, examples for your own projects and our own open source C++11 library "alpaka/cupla" for writing performance-portable, single-source C++ code. As you might have [hoped/worried] already, we will make an excursus to C++ template meta programming and its benefits (and drawbacks) for the latter. CXX compile error messages that burst your terminal's scroll limit might appear 2>&1 | more.


Tag: 23.10.2016
Anfang: 12:00 Uhr
Dauer: 01:00
Raum: Kino

Sprache: de


Concurrent Events

Technisches Theater
Pädagogik & Technik