SAC-HOME - Key Persons


Abhishek Lal

Job Titles:
  • Indian Institute of Technology, Delhi

Alexei Kudriavtsev

Alexei Kudriavtsev University of Novosibirsk Alexei provides CFD applications for SaC. Bernhard Moser SCCH, Austria Bernhard provides case studies from vision and single processing applications. Volkmar Wieser SCCH, Austria Volkmar has led the development of an eclipse plugin for SaC. He also has leveraged SaC's code portability for heterogeneous multi-core platforms in vision applications.

Clemens Grelck

Clemens Grelck University of Amsterdam Clemens integrated the module system and the functionally sound I/O facilities into SAC. Later on he worked on the implicit support for multithreaded execution of SAC programs on shared memory architectures. Clemens is particularly interested in all aspects of parallel program execution, in compiler optimization techniques, and in memory management. Sven-Bodo Scholz Heriot-Watt University Sven-Bodo made the basic language design of SAC. He is particularly interested in compiler optimizations, compilation to multiprocessor systems, as well as language re-design due to application feedback. Currently, he works on a re-design of the type system of SAC as well as language extensions for unifying arrays and streams.

Daniel Rolls

Job Titles:
  • Chief Designer and Engineer of the Unibench
Daniel is the chief designer and engineer of the Unibench benchmarking platform and is involved with application benchmarking.

Dietmar Kreye

Dietmar implemented the compiler backend for generating efficiently executable code from multi-generator with-loops. Later on he worked on extending the compiler backend to support arrays whose shapes are statically unknown.

Florian Massel

Florian worked together with Andreas on the first SAC-home.org presentation of the SAC project.

Gijs Cuyck

Gijs has developed an optimisation for doing fold-operations in-place that operate on hyper-planes of higher-dimensional arrays.

Jan-Henrik Baumgarten

Jan-Henrik worked on improving the internal compiler infrastructure. As a part of his term project, he designed a conformity checker for the syntax tree representation that can be derived mostly automatically from a formal XML specification.

Jing Guo

Jing did a PhD on automatically compiling SAC programs for the NVIDIA CUDA GPGPU architecture.

Job Cuppen

Job Cuppen Radboud University of Nijmegen Job is working on a package manager for SaC that ensures correct cross-module builds in the context of versioning, name duplicates and cross-platform reproducability. Niek Janssen Radboud University of Nijmegen Niek implements a new improved code generator for CUDA. It allows mapping with-loop index sets into thread-spaces by means of a few well-defined combinators. These mappings can either be user-specified in the form of pragmas which can be inferred by means of a few alternative strategies through the compiler as well. Reg Huijben Radboud University of Nijmegen Reg implements support for structures, arrays of structures, and structures of structures, as long as they are not recursively nested.

Max Marlon Baird

Working on his term project, Kai has implemented with-loop scalarization, an important optimization schemes which prevents the actual creation of temporary arrays during the execution of nested with-loops. In his Diploma thesis, he implemented a completely redesigned memory management system based on reference counting. By introducing new intermediate languages for memory management instructions, a variety of optimizations became possible in this area. He did a PhD on applying concepts from dependent types to array programming for advanced optimization and correctness analysis. Jing Guo University of Hertfordshire Dietmar Kreye University of Kiel

Michael Werner

Michael has worked on implementing some basic though still missing compiler optimizations, namely exploitating of associativity, commutativity and distributivity in conjunction with constant folding. His more recent term project covered type information upgrades and the introduction of semi-static function dispatch facilities.

Nico Marcussen-Wulff

Nico developed an interface that allows for calling SAC functions from within C programs, as part of a term project. In his Diploma thesis he re-implemented several standard optimization techniques based on an internal program representation based on static single assignment form. Nico graduated from the University of Kiel with a Diploma in Computer Engineering in 2001.

Robert Bernecky

Job Titles:
  • Member of the Senior
Robert Bernecky Snake Island Research Bob investigates to what extent array properties such as shape relations can be exploited for code optimization. He implements his concepts as part of the optimizations integrated into the SaC compiler. In addition, Bob also works on porting the backend of his APEX APL compiler from Sisal to SAC. Artem Shinkarov Heriot-Watt University Artem has done his PhD on data-layouts for improved vectorisation. He is currently working on type-driven streaming in SaC.

Steffen Kuthe

In his Diploma thesis, Steffen investigated advanced compilation techniques for shared memory parallelization, namely a hybrid execution model that combines elements of traditional fork-join and single-program-multiple-data approaches.

Stuart Gordon

Stuart Gordon Heriot-Watt University Stuart is looking into dynamic adaptation of resource usage for parallel executions. Carl A Joslin University of Hertfordshire Carl is doing a PhD on automatically compiling SAC programs for the MicroGrid architecture developed at the University of Amsterdam. Hans-Nikolai Viessmann Heriot-Watt University Hans is looking into streaming computations through multiple accelerators including GPUs and FPGAs.