Thanks to high-performance computing (HPC), it is possible to solve all kinds of highly complex projects from multiple scientific disciplines that require computationally intensive tasks to be undertaken and which otherwise could not be addressed. Unfortunately, since the development of parallel codes requires highly specific knowledge, it can become a challenge for beginners and non-expert programmers, especially when it comes to making adequate and efficient use of the available computing resources. To this end, we developed a transcompiler for helping researchers and inexperienced users who do not have the necessary skills in the use of parallel programming, and aimed at improving the performance of their HPC routines and tasks. Current efforts are focused on an additional module for optimizing code fragments in order to reduce their running times. In order to achieve this, twenty-six software techniques were selected from the literature to be integrated into this new module, all of them aimed at improving execution times of HPC programs by directly writing efficient code. Their effectiveness is analyzed and discussed in the current manuscript through a complete set of tests designed and conducted to measure and evaluate benefits achieved when applying these techniques.
- Javier Corral-García, Felipe Lemus-Prieto and Miguel-Ángel Pérez-Toledano. Efficient code development for improving execution performance in high-performance computing centers. The Journal of Supercomputing, 2020. doi:10.1007/s11227-020-03382-z