Title :
Using Software Engineering Methodologies to Port a Scientific Code to GPUs: Experiences and Lessons Learned
Author :
Hari, Madhu ; Moore, Shirley
Author_Institution :
Energy & Geosci. Inst., Univ. of Utah, Salt Lake City, UT, USA
Abstract :
This work was carried out as a master´s level software engineering project over the course of two semesters. Software engineering methodologies were applied to try to improve the portability, maintainability, and performance of a fusion energy code by systematically using tools to try to map computationally intensive parts of the code to GPUs using Open ACC. Our experiences show that while the approach is promising, tool support for Fortran is lacking and difficulties in working with the complex code in a supercomputing environment limit what can be achieved in a reasonable amount of time.
Keywords :
FORTRAN; graphics processing units; project management; software maintenance; software portability; software tools; source code (software); Fortran; GPU; Open ACC; fusion energy code; maintainability; master level software engineering project; portability; scientific code; software engineering methodologies; supercomputing environment; tool support; Graphics processing units; Kernel; Libraries; Multicore processing; Ports (Computers); Software engineering; parallel computing; performance; portability; productivity;
Conference_Titel :
Software Engineering for High Performance Computing in Science (SE4HPCS), 2015 IEEE/ACM 1st International Workshop on
Conference_Location :
Florence
DOI :
10.1109/SE4HPCS.2015.17