By realizing the AllScale vision through the development of the AllScale API, compiler, runtime system, and runtime system sub-systems, the following goals have been achieved:
- The provisioning of an effective and efficient, purely C++ based, target platform oblivious, shared-memory like programming model for large-scale HPC applications
- The effective separation of concerns among HPC application developers, parallel API designers, compiler and runtime developers, and runtime service specialists
- The creation of moldable HPC applications that can be adapted to a given target architecture, load characteristic, and user-preferences in computation time, resource usage and energy consumption
- The transparent integration of checkpoint/restarting techniques in HPC applications to compensate for node failures within a running application instance
As a result, the AllScale environment can be used as a platform facilitating the effective development of HPC applications using state-of-the art C++ development tools. The provided range of parallel data structures and algorithms provide a valuable foundation for future development projects, eliminating the need for re-implementing frequently encountered patterns while still facilitating their customization where needed. Applications, once developed using the AllScale API, can be ported to a variety of target architectures. Furthermore, such applications benefit from future developments like the support of additional parallel resource types or improved runtime services by simple re-compilation and linking. Thus, future developments can be integrated in (then) legacy codes following this paradigm.
The AllScale tool chain is currently operational and used for various parallel computers including the LEO3 (UIBK), VSC-3 (UIBK), Beskow (KTH), Meggie (FAU), Cori (NERSC) parallel computer. The AllScale environment can be downloaded and installed from
https://github.com/allscale(odnośnik otworzy się w nowym oknie) under the GNU General Public License and the Boost Software License. The project partners are committed to maintain the tool chain beyond the project completion. In the future, it is unlikely that HPC will lose momentum, as most major information technology analysts (e.g. Gartner, ITC) forecast that HPC will play an important role in IT. Moreover, several existing and new technologies depend on HPC, such as Big Data, artificial intelligence, machine learning, IoT, requiring adaptation of the researched technologies to these new paradigms. AllScale will be open and adapt to these new developments beyond its lifetime.