The research in High-Performance Computing focuses on different aspects
of optimizing (or "tuning") existing applications or applications under
development, such that results can be obtained faster. Typically those
applications are large-scale simulations, that can run for days and
weeks and that consume lots of computational resources, e.g. memory,
CPU cycles, disk space, etc.
Serial tuning. This area focuses on finding the bottlenecks in sequential algorithms and applications, and to implement solutions that are optimized for modern cache-based computer systems. |
![]() |
Parallelization. This work involves design of parallel algorithms and/or the attempt to parallelize existing algorithms efficiently. The major part of work in this area is the development of parallel codes for SMP (Symmetric Multi-Processors) types of machines, using OpenMP. |
![]() |
Run-time optimization. Large applications can very often benefit from changing or optimizing the runtime environment, e.g. access to local disks, changing the memory page sizes, etc. The latter can be a good way to improve performance for applications that are not available in source code, and that suffer from many address cache (TLB) misses. |