Future topic: Software Development in High Performance Computing
The German Research Foundation (DFG) regards the redesign of software development in high performance computing as one of the main future challenges. Thus the DFG is first starting the priority program “Software for Exascale Computing (SPPEXA)” from the president’s strategy fund. The informatics professor Hans-Joachim Bungartz from the TUM’s Chair of Scientific Computing promoted the project and is presently one of the coordinators. SPPEXA is based on a 6 year time frame with a budget amount of 24 million euros.
Software – The deciding factor
According to Moore’s Law the computing power of computers doubles approximately every 18 months. Meanwhile, this is how the fastest computers work in the petaflops range. According to this, more than one quadrillion (1015 ) additions or multiplications can be carried out per second. The goal for the next years: The efficient utilization of the then 1000 times faster exaflop computers.
Super computers perform their individual tasks at the same time to a large degree by distributing work packages to many different computer cores for simultaneous processing. Therefore, the appropriate software must be adapted to the parallel hardware architecture. With an increasing degree of parallelism, the hardware on the one hand and the increasing complexity of simulation software on the other hand, the complexity for the continuous adaptation is becoming more and more unmanageable.
Today we know: that though earlier the hardware was responsible for the advancement of a computer’s speed, today it is the software. The step towards the exascale range can only be achieved if the software can keep up with the extreme parallelism of the hardware – and here previous approaches must essentially be reviewed in many respects. Therefore, new concepts for software in the area of high performance computing in SPPEXA must be developed. In the end, totally new approaches for the software development of super computers could exist.
What is only significant for super computers today, will soon already be useful to computer users at home. Here too one expects more and more speed and consequently an increased parallelization of work packages in order to efficiently use computers with multiple processor cores to full capacity.