Parallel Computing Algorithms & Systems

Auto-tuned parallel software for multi-core processors, GPUs, clusters & clouds

Parallel computing methods must deal with a number of very different parallel computing architectures such as multi-core processors, many-core GPUs, processor clusters and cloud architectures. Traditional parallel algorithms and software have been designed and optimized for individual parallel architectures. This means however that each new architecture requires a new software implementation. Here, we study new parallel methods (parallel algorithms and parallel software) that automatically adapt to the parallel architecture on which they are being executed. Such auto-tuned methods have a software installation phase in which they measure the performance parameters and properties of the parallel architecture (e.g. a multi-core processor or GPU or cluster) and automatically adapt themselves in order to achieve optimal performance and scalability. Such adaptations can include changing algorithm parameters or modifying the entire algorithm.


    Lab (VSIM Building)