Research Group APART

Goals and Tasks of the Research Group

The industry is faced with the challenge of adapting large amounts of legacy software to modern multicore processor systems. Without automated support through parallelization tools for developers, this is not economically feasible. Currently, a lack of suitable techniques and tools is apparent; existing tools are incompatible and not available for all required programming languages and application domains. As a result, sequential software is still mostly converted by hand to support parallel hardware. This process is costly, error-prone and, in many cases, requires a redesign.

Working up the technical requirements for a large-scale parallelization is not only a practical, but also an academic challenge in software design. The arising fundamental questions are:

  • How can we automatically detect parallelizable program structures?
  • How can we transform a sequential program automatically into an efficient parallel program?
  • How can we generate effective test cases for parallel programs automatically?

With APART, the research partners KIT and SIEMENS want to advance the research on parallelization techniques together. We want to develop new techniques and prototypical tools for automated parallelization and prove them on industrial applications. Our tools shall cover all areas of automated parallelization, from program analysis to code transformation to testing. We follow design pattern-based (parallelization) and model-driven (testing) approaches, respectively.