Method Labs

Performance Engineering

Main focus of this Method Lab is to offer support in code optimization and to develop a tooling infrastructure for improving the efficiency of scientific software. Standard sup- port offered by this lab includes code optimization, vectorization, and adoption of the code for GPU use. Novel tools for this lab will also be made available by our other method labs.

AI and ML

AI is seeing a tremendous uptake across essentially all scientific disciplines and is growing exponentially in terms of novel AI techniques and available tools. The general goal for this method lab will be to maintain not only an overview about this development and help scientists navigate this space with respect to their specific needs, but to maximally support them in their use of AI/ML. We will specifically assist users with the visualization, debugging, and explainability of AI systems, which is becoming increasingly important to better understand and make efficient use of these technologies in concrete projects (a.k.a. Explainable AI).

Parallel Programming Environments and Domain-Specific Compilation

Within this lab, we will adapt AnyDSL (Domain-specific Language) and related technology to the needs of users and offer general support. We will host regular tutorials and provide individual support to customers implementing DSLs in AnyDSL. Furthermore, we provide support in fundamental DSL techniques such as metaprogramming, DSL embedding, and the adoption of compilation frameworks and techniques such as LLVM. Additionally, we provide support for high-performance derivative computations for DSLs via automatic differentiation software such as CoDiPack.