Section: Overall Objectives
Overall Objectives
The Roma project aims at designing models, algorithms, and scheduling strategies to optimize the execution of scientific applications.
Modern computing platforms provide huge amounts of computational power—the top supercomputers contain more than 100,000 cores, and volunteer computing grids gather millions of processors. Squeezing the most out of these platforms could enable scientists to solve problems that remain currently beyond reach. However, to reach such a goal, all platform resources must be efficiently used: computational units, communication capabilities, memory hierarchies, energy, etc. Such resource optimizations are quite difficult because modern platforms have new, and hard to manage, characteristics: they contain multicore processors and sometimes specialized processors such as GPGPUs (General Purpose - Graphical Processing Units); they may be distributed on a very large scale, which can significantly impact communications; they may be volatile and even unreliable; and their usage may be subject to conflicting objectives from the platform owner(s) and users. Therefore, harnessing the full power of modern computing platforms requires careful theoretical algorithmic studies of resource optimization problems. The goal of the Roma project is to perform such studies and to design efficient practical scheduling strategies and resource allocation algorithms.
Historically, the Roma team comes from the merging of two of the three groups that composed the GRAAL project-team: (i) the group focusing on fundamental research on scheduling strategies and algorithm design for heterogeneous platforms; and (ii) the group working on direct solvers for sparse linear systems. The Roma project is organized around two main research themes —that are relevant to the focus of the former groups— and four transverse topics.
The two main research themes are:
The four transverse topics are: