High-Performance Computing: from Optimization to Automation

Bérenger Bramas · HAL (Le Centre pour la Communication Scientifique Directe) · 2025

The digital revolution of our society is driven by major technological advancements, enabled not onlyby the growing capabilities of computers but also by the evolution of their uses. These developmentsresult from a complex interaction between what we can do, what we know how to do, and what wewant to do, all within a constantly changing context.Computing, at its core, can be reduced to its ability to perform calculations, as processors do. Itis all about computations and data. The performance of processors enables certain methods, which inturn generate new uses, creating demand for even more powerful processors to speed up these methods.The use of graphics processing units (GPUs) for deep learning is a striking example.Efficient utilization of increasingly powerful hardware has long been a pursued goal. High-performancecomputing (HPC) is a specific field of computing — both a research area and an essential tool for thedevelopment of digital applications. It is a vast domain with its own challenges, yet inherently linkedto other sectors such as algorithms, mathematics, networking, and hardware.HPC research follows hardware advances. Each new innovation may necessitate the reimplementa-tion of classic methods, either to adapt to the new features or to fully exploit their specifics. Methodsenabling more general and flexible adaptation thus become crucial.In this domain, implementation plays a central role — not only to maximize program efficiency byfully utilizing hardware potential but also to structure tools and applications that may require yearsof development and rely on millions of lines of code. Sometimes, significant implementation work isnecessary simply to assess the potential of a new approach.Document organization This document begins with a description of the current HPC ecosystemand the research and development processes for applications that depend on it. We will examine themain challenges in this field, including the layered software organization, which often complicates HPCapplication development, maintenance, and optimization. Another recurring issue is the lack of solutionportability. Applications developed for a specific hardware architecture are not always easily adaptableto other environments, limiting their flexibility and longevity. The transfer cost can be eliminated orreduced when generating an optimized solution is performed automatically by a tool.However, a major challenge lies in the difficulty of producing generic tools. Current HPC applica-tions are often rigid and designed to meet very specific needs, making their reuse or extension difficultwithout considerable adaptation work. Furthermore, the way these systems are developed often focuseson the detailed description of how to do — i.e., the technical procedures to achieve a goal — rather thanfocusing on clearly expressing what we want to do, the ultimate objective. This procedural approachconstrains innovation and adaptability, especially in a rapidly evolving technological environment.After identifying these challenges, we will present the solutions we have implemented to overcomethem. We will detail the strategies we have adopted to improve application portability, increase theirgenerality, and facilitate the expression of intentions rather than procedures. This will include tech-niques aimed at simplifying development, reducing software layer complexity, and enabling greaterflexibility in using hardware architectures.Finally, we will conclude by proposing a new prospective approach based on emerging trends in theHPC field. This approach will explore ways to rethink software and hardware architecture to betteranticipate and meet future needs while allowing for improved scalability and modularity of applications.We will thus outline the foundations of a new vision of high-performance computing, more suited tothe technological and human challenges of tomorrow.

Read the paper · More papers on PaperTik