HPC: Key Technologies and Tools

Objectives of the research activities

 

HPC programming is inherently complex because it requires combining the specific skills of application domains, such as chemistry and physics, with the technical skills in high-performance computing, more typical of information technology and computer engineering. A complexity destined to increase with the ongoing trend towards computing devices' specialization (CPU, GPU, DPU, FPGA, etc.), the heterogeneity of platforms, and the growing need to guarantee applications extra-functional requirements, such as security and robustness.

 

This challenge is made even more difficult by the HPC-AI convergence, which requires integrating very different software stacks and development methods. For this reason, the tools and methods of traditional programming and data management in HPC will have to evolve towards levels of abstraction closer to the needs of the application domains, facilitating the design of both correct and efficient applications (in time, energy, robustness, etc.).

The HPC sub-sectors in which the HPC-KTT laboratory expresses specific skills are:

 

  • Programming models

  • Algorithms and scientific software libraries

  • Compilers

  • High-level synthesis of specialized processors and accelerators

  • Productivity: Programmability, portability, portability of performance

  • Integration, usability, standardization

  • Energy consumption optimization, edge systems (hardware and software)

  • Cloud engineering, cloud-HPC, cloud-edge

 

Technological objectives 

The areas of interest intersect several long-term technological objectives, among which:

 

  • O1: Digital Continuum: Support for new deployment and usage models;

  • O2: Orchestration: support for multiple programming and execution models;

  • O3: Performance: scalability as a primitive concept in programming environments;

  • O4: Multi-tenancy: provision of specific environments suitable for the world of industry and allowing the treatment of extra-functional requirements;

  • O5: Energy efficiency: support in both hardware and software; in particular, energy-aware software development methods;

  • O6: Standardization, as a fundamental element supporting the digital Continuum value chain.

Training activity

The laboratory provides for the coordination of training activities, both in the academic and industrial / application fields (design and delivery). Currently, issues related to HPC are not adequately represented in the three-year and master's degree courses. The laboratory aims to intervene in the ongoing debate at the national and international level regarding the contents to be included in first and second-level degrees to cover the necessary bases for HPC experts' training. In particular, it aims to identify the fundamental contents that should be included in the different levels of university teaching, among which certainly will be included:

 

  • general techniques for concurrent, parallel, and distributed programming;

  • use of reconfigurable and non-reconfigurable accelerators;

  • tools for developing and fine-tuning HPC applications at different scales of parallelism;

  • tools and techniques for energy efficiency of HPC applications.

Besides education, the HPC-KTT laboratory will implement actions to ensure continuous training for HPC users and experimenters also in the context of industrial realities. The laboratory will work to define unifying guidelines for courses of various levels starting from basic training up to refresher and specializations courses.

 

The activities carried out within the laboratory will be accompanied by coordination and integration actions with the other actors of the HPC scenario active in this area, such as the leading suppliers of HPC infrastructures and the application domains' experts. They typically provide courses on the tools for using the infrastructures although focused on different perspectives and needs. 

The laboratory also intends to establish or exploit the already existing direct channels with HPC technology/hardware's leading suppliers to create new synergies. On the one hand, this will allow contributing feedback and suggestions to the development process of the programming tools made available by the suppliers and, on the other hand, knowing in advance new development tools before they are even available on the market.

 

Technology transfer activities

The laboratory will implement actions aimed at technology transfer and consolidation of research activities in collaboration with industry and SMEs.

 

The laboratory intends to address research topics in the area of ​​the main large-scale HPC technologies (pre-exascale and exascale), but also in the context of medium-scale systems, which are widespread both in research institutes and in large industries and consortia of SMEs. Portability - the ability to use the same software environment and the same tools and technologies on systems of different scales - is an essential element of the HPC value chain. Cloud, cloud-edge, and cloud-HPC platforms are equally of great interest for the research conducted in the HPC-KTT laboratory.

 

The laboratory intends to use its HPC know-how to implement technology transfer initiatives in two distinct ways:

 

  • On-demand, as a group of experts in HPC enabling technologies, able to provide consulting services to industrial realities. In this context, one of the first steps of the laboratory will be developing a "map of competencies" (in part already elaborated in the constitutive phases of the laboratory) which allows industrial subjects to intercept the competencies of the members of the laboratory. This mode aims to interact with industrial realities already aware of the HPC world's potential and the possible use of related technologies for their specific interests and domains. 

  • Proactively, making available through virtual channels or direct knowledge pills capable of highlighting different aspects of HPC technologies that can have relevance and impact in the industrial world. This mode aims to capture the interest of those realities that do not know HPC's possibilities and cannot autonomously identify HPC tools and technology at different scales to improve their production/development processes.

 

Both methods (the first more of the "pop" type, the second more of the "push" type) will have to leverage the huge HPC know-how of the various offices that adhere to the laboratory both in an integrated form and for specific fields of interest and application.

 

Relationship with the other components of the national HPC panorama

The HPC ecosystem is centered on three distinct pillars: infrastructures, applications, and enabling technologies, which are the theme of the laboratory "HPC: Key Technologies and Tools" (HPC-KTT).



Driven by the HPC application fields' rapid evolution, the HPC-KTT laboratory will develop strong collaborations with the other CINI laboratories on contiguous topics, also with the objective to provide tools and platforms for high-performance computing adapted to specific applications needs. In this sense, the laboratory aims to be complementary and synergistic with respect to both groups and activities more directly related to infrastructures and applications. In particular, it is envisaged the possibility of identifying synergies in the co-design or co-tuning of HPC infrastructures on different scales. It is also expected the exploitation of interesting perspectives in the mutual contamination between the techniques developed to design and distribute parallel HPC applications in specific application domains and the results related to the development of enabling technologies for HPC. Within the CINI ecosystem, the laboratory aims to interact with existing working groups and laboratories that address the HPC scenario from more specific and application-dependent perspectives (AI, Big Data, Machine Learning, Bioinformatics, Medical applications, Cybersecurity, Smart Cities, IoT, etc.) to meet new challenges to be engaged in the HPC technological scenario and provide skills related to parallel computing in specific sectors of application domains.

 

Share This

S5 Box

Cini Single Sign ON

This site only stores technical/functional cookies. If you want to know more, go to the Cookie Policy section.