Vortrag: The Supercomputer in Front of You
Use your Flop/s - Status of FOSS, Many-Core & C++11
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.
Anfang: 12:00 Uhr
- Technisches Theater
- Pädagogik & Technik