Helmholtz Association

Faster computing through improved cooperation

The performance of scientific supercomputers is increasing at a tremendous pace. However, existing software often fails to make full use of the computing capacity. Scientists at Forschungszentrum Jülich are therefore developing a method that identifies time-consuming bottlenecks in computer programmes. The magic word is "cooperative work".

The 16,000 processors in the JUBL supercomputer at Forschungszentrum Jülich have to work together, much like the staff in a company. The better they harmonise with each other, the more efficiently they achieve a result. This is why Prof. Dr. Felix Wolf, who heads the Young Investigators Group on "Performance Analysis of Parallel Programmes" in Jülich, is analysing the procedures and workflows in the computer. "Modern computers often use only a few percent of their capacity," says Felix Wolf explaining his motivation. As computers become increasingly complex, the problem is intensified. More and more processors have to simultaneously execute subprogrammes and, from time to time, exchange their data. "This is exactly where the problems start for many programmes," says the computer scientist. Programmers have to integrate the work-sharing between the processors into the code. "Valuable compute time is lost if one processor needs input from another so that it can continue computing but doesn't get this input in time." Besides diagnosis functionality, the Helmholtz Virtual Institute "High-Productivity Supercomputing", which Felix Wolf coordinates, also aims to optimise programmes for parallel computers. Apart from Forschungszentrum Jülich, the other partners in the Virtual Institute are RWTH Aachen University, Dresden University of Technology (TU), and the University of Tennessee. The great potential to be found in optimising the software is shown by the simulation programme developed by Wolf's cooperation partner Marek Behr from RWTH Aachen University. He uses the JUBL supercomputer to calculate the geometry of blood pumps. These miraculous inventions, no bigger than a finger, are implanted into the human body and when pumping must not destroy the sensitive blood cells. This is why the computer has to calculate how the many small particles flow in the blood. In the past year, Felix Wolf and his staff were already able to reduce the required compute time to just one third. They also assume that there is still plenty of room for improvement. To enhance the analysis functions, Felix Wolf is incorporating a special kind of sensor into the simulation programme. "These again are small programmes that log tiny performance-relevant events of the individual processors for each computational step," he explains. His programme package SCALASCA (Scalable Performance Analysis of Large-Scale Applications) analyses the data. Programmers can then use these results to improve the code for the next version. A large proportion of the diagnosis software available today cannot yet analyse programmes that use all the processors of Jülich's supercomputer. By contrast, SCALASCA is now also able to take a closer look at software that can utilise all 16,000 of the processors. This means that programmers can now get the best out of JUBL and other new generation supercomputers.

12.01.2013