An Optimization and Co-design Framework for Sparse Computation
SparCity is an ambitious but pragmatic project that will deliver a coherent collection of innovative algorithms and tools for enabling both performance and energy efficiency of sparse computations on emerging hardware platforms, with the application focus on computational science, deep learning and data analytics. For major scientific innovations, data that needs to be processed, managed, and analyzed is increasingly immense, distributed, and unstructured. Furthermore, a large fraction of this data is sparse. Such sparse data is typically modeled as a graph, hypergraph, sparse matrix or a sparse tensor. Computations on these data structures are already notoriously difficult for existing HPC systems to achieve good efficiency, but the rapidly evolving hardware landscape will make the challenge even more pronounced.
- By modeling the performance and energy consumption via analytical and machine learning based predictions tailored towards sparse computation, the SparCity framework will create a recommendation system for platform, data storage format, arithmetic precision, and the computation kernel. SparCity will then automate the complex and human-labourintensive optimizations on both node- and system-levels, and enable the acceleration of sparse computation on diverse hardware with performance at the level of hand-tuned implementations.
- SparCity will also develop SuperTwin, the digital twin of the underlying supercomputer architecture. This digital replica will ensure that the node-level and system-level optimizers and modelers of SparCity effectively work on mainstream and non-mainstream architectures. It will act as an oracle when a new hardware modification on the underlying architecture is on the horizon. With its own AI, SuperTwin will learn from itself and will be able to propose offline and real-time optimizations.
- Following the principle of software-hardware co-design, SparCity will be applied to four real-world applications that are important for the daily lives of EU citizens. These include (1) extreme-scale simulations of cardiac electrophysiology and (2) high-order epistasis detection, both for improving public health; (3) detection of fake news spread on social networks and (4) behaviour prediction of pedestrians for autonomous driving, both for improving societal safety. SparCity will use these use-cases to evaluate and demonstrate the usability and performance of the framework as well as leverage them for its dissemination activities. The software optimization findings will also provide suggestions of hardware improvement directly to the SparCity consortium member Graphcore: a newcomer in the European semiconductor industry.
The partners of this project are key players in the area of high performance computing with expertise in various aspects of sparse computation. The consortium includes not only universities and research institutes, but also one of the most innovative semiconductor companies in the field of European low power processing technologies for machine learning. The team’s spectrum of expertise covers computer architecture, system software, HPC applications, big data, parallel programming environments, and machine intelligence. In addition to the strong track records of the individual project members, this project will build on the existing strong collaborations between the partners, enabling productive developments from day one. The project coordinator is Didem Unat (Koç University).
Overall, SparCity is a forward-looking project with a significant contribution to building Europe’s strengths in the application of HPC and related software tools, in the adoption of lowenergy processing technologies, and in the development of advanced software and services for its citizens.