User-Guided Optimization in High-Level Languages

Abstract

While writing code in High-level languages, HPC programmers often have a notion of gainful optimization strategies, that should be applied to their code. Nevertheless, nowadays compilers generally use heuristics to decide on optimization strategies. To lower this gap, we will present new ideas and tools to raise the programmers control over compiler optimisation, i.e.

Noise - trigger optimizations by annotations

Sierra - SIMD computations with compound data types

AnyDSL - create DSLs with associated optimization strategies

All of these tools will also be applied in hands-on sessions. In addition, an overview of available optimization strategies will be given by compiler experts.

Noise and Sierra are limited to C/C++, even though the underlying concepts ought to be applicable also to other imperative languages, particularly Fortran. AnyDSL uses a dialect of the Rust programming language.

Registration

Deadline for Registration

30 June 2014 (extended deadline)

Fee

The attendance to this course is free.

Cancelation policy

If you cannot come to the course, please send an email to the organizer as soon as possible. This would allow us to accept additional participants from the waiting-list. There is no cancelation fee. NO-SHOW: Registered persons that do not cancel and do not show up without any reasons are blocked for the next year on any of our workshops (because it is too expensive to produce unused copies of the slides for them).