@inbook{c0ba56758c8542beb07f2effe3d1996b,
title = "Environment for automatic development and tuning of parallel applications",
abstract = "The use of high performance computing has been gaining more and more followers in the different branches of Science and Engineering given the potential offered to deal with complex and big problems. However, the parallel programming paradigm involves additional aspects to the merely functional, which could provoke different kinds of bottlenecks in the performance of the applications. Such diff culties may represent critical obstacles, especially for the non-expert users. In this work, we consider the limitations of the automatic development of parallel applications, and the obstacles in the performance tuning process, and we propose a built-in environment that integrates these both processes in a transparent manner. We call our proposal as Environment for automatic development and tuning of Parallel Applications (EPA). EPA follows a cooperative approach: (i) It provides an interface to guide the user in the depiction of the pair problem-solution by completing a form; (ii) such information is automatically formalized in a specif cation; (iii) the specif ed information is automatically used by EPA to instantiate an instrumented skeleton; (iv) the skeleton of the parallel application is a priori enriched in EPA with tuning instrumentation, for monitoring, analysis and tuning actions; (v) the tunable parallel application is automatically generated by EPA; (vi) the user is able to execute the application with no more effort than having completed a form. Clearly, EPA makes transparent the process of code generation and instrumentation, which represents an important advantage especially for non-expert users. Given that the parallelization of any pair problem-solution is hard to generalize, the environment proposes to tackle different parallel problem solvers. The tuning knowledge injected in the generated applications is based on performance models, which makes the decision-making process concise. The Environment could include as problem solvers as needed. In this article, we introduce the problem solver constituted by the Parallel Genetic Algorithms, and - with respect to the tuning process - we consider the improvement of the amount of computational resourses involved in the execution.",
keywords = "automatic development, automatic performance tuning, dynamic tuning, genetic algorithms, parallel genetic algorithm, parallel paradigm",
author = "Paola Caymes-Scutari and Germ{\'a}n Bianchini and Anna Sikora and Tom{\`a}s Margalef",
year = "2016",
month = sep,
day = "13",
doi = "10.1109/HPCSim.2016.7568409",
language = "Ingl{\'e}s estadounidense",
series = "2016 International Conference on High Performance Computing and Simulation, HPCS 2016",
publisher = "Institute of Electrical and Electronics Engineers Inc.",
pages = "743--750",
editor = "Vesna Zeljkovic and Smari, {Waleed W.}",
booktitle = "2016 International Conference on High Performance Computing and Simulation, HPCS 2016",
address = "Estados Unidos",
}