Exascale Computing Sample Clauses
Exascale Computing. We previously mentioned ▇▇▇▇▇'▇ law. ▇▇▇▇▇’▇ law states that the number of transistors in a dense integrated circuit doubles approximately every two years. This law formulated in 1965 not only proved to be true, but it also translated into the doubling of the computing capacity of cores every 24 months. This was possible not only by increasing the number of transistors but also by increasing the frequency at which they worked. However, we can say that in the last few years the end of this paradigm seems to have arrived. The reason is that the performance of a single core is no longer increasing at the same pace. There are three main reasons for this: caches between the processor and the main memory, increasing the sizes of these caches and adding more levels of caching. But memory bandwidth is still a problem that has not been solved. Nevertheless, computer technologists are also focussed on making exascale machines, but they cannot rely on increasing the performance of a single core as they used to. The workaround is that the number of cores and accelerators per chip and per node has grown fast in the recent years, along with the number of nodes in a cluster. This is pushing research into more complex memory hierarchies and network topologies. Once exascale machines are available, the challenge is to have applications that can make efficient use of them by scaling to these levels. The increase in complexity of the hardware is a challenge for scientific application developers because their codes must run efficiently on more complex hardware and address a higher level of parallelism at both shared and distributed memory levels. This is where co-design is essential, and where we have invested time to adjust and update our codes to run efficiently on these future archetectures. Co-design implies a mutual effort of hardware developers, system integrators, and application developers to build future compute platforms together with performant software that runs on them. Being a domain-science centric ▇▇▇ covering a broad range of applications, we see our main contribution on the software side. We will mainly address two aspects namely, support and guidelines for code adaptation and porting (software co-design) and performance modelling for future simulations that can be used for the design of new hardware and systems (hardware co-design). For both aspects, we need reliable data, which we obtain by setting up a scalable CompBioMed benchmark suite. It will cover th...
