Prev: O12.1 Next: O12.3

O12.2: Tavagnacco, Daniele
Daniele Tavagnacco (INAF-OATs)
Marco Frailis (INAF-OATs)
Samuele Galeotta (INAF-OATs)
Davide Maino (INFN)
Erik Romelli (INAF-OATs)
Claudio Vuerli - INAF-OATs, Giuliano Taffoni - INAF-OATs, Gianmarco Maggio - INAF-OATs

Time: Mon 12.00 - 12.15
Theme: Algorithms
Title: Performance-related aspects in the Big Data Astronomy Era: architects in software optimization

In the last decades the amount of data collected by Astronomical Instruments and the evolution of computational demands have grown exponentially. Today it is not possible to obtain scientific results without prodigious amounts of computation. For this reason, the software performance plays a key role in modern Astronomy data analysis. Scientists tend to write code with the only goal of implementing the algorithm in order to achieve a solution. Code modifications to gain better performance always come later. However, as computing architectures evolve to match the performance that is demanded, the coding task has to encompass the exploitation of the architecture design, the single-processor performance and parallelization. To facilitate this task, programming languages are progressing and introducing new features to fully make use of the hardware architecture. Designing a software that meets performance, memory efficiency, maintainability, and scalability requirements is a complex task that should be addressed by the software architect. The complexity stems from the existence of multiple alternative solutions for the same requirements, which make tradeoffs inevitable. In this contribution we will present part of the activity done at the Italian Science Data Center for the ESA’s cosmological space mission Euclid which regards the software performance optimization. In particular, considering the programming languages selected for the development of the Euclid scientific pipelines, we will present some C++ and Python examples focusing on the main aspects of human contribution in the optimization of the code from the performance, memory efficiency and maintainability point of view.

Link to PDF (may not be available yet): O12-2.pdf