A methodology and ecosystem for many-core programming

Computers are going through a radical redesign process, leading to novel architectures with large numbers of small cores. Examples of such many-cores are Graphics Processing Units and the Intel Xeon Phi, which are used by about 65% of the top 50 fastest supercomputers.

Many-cores can give spectacular performance results, but their programming model is totally different from traditional CPUs.

It currently takes an unacceptable amount of time for application programmers to obtain sufficient performance on these devices. The key problem is the lack of methodology to easily develop efficient many-core kernels.

We will therefore develop a programming methodology and compiler ecosystem that guide application developers to effectively write efficient scientiffc programs for many-cores, starting with a methodology and compiler that we have developed recently. We will apply this methodology to two highly diverse applications for which performance currently is key: Bioinformatics and Natural Language Processing (NLP). We will extend our compiler ecosystem to address the applications’ requirements in three directions: kernel fusion, distributed execution, and generation of human-readable target code.

The project should provide applications and eScientists with a sound methodology and the relevant understanding to enable practical use of these game-changing manycores, boosting the performence of current and future programs.

This call is closed

The projects have been awarded, at the bottom of this page the current projects.

Newsletter

Sign up for our newsletter and stay informed of the latest news Commit2data

Related projects

View the projects related to the theme eScience