Semi-automatic porting of a large-scale Fortran CFD code to GPUs

被引:25
作者
Corrigan, Andrew [1 ]
Camelli, Fernando [1 ]
Loehner, Rainald [1 ]
Mut, Fernando [1 ]
机构
[1] George Mason Univ, Coll Sci, Ctr Computat Fluid Dynam, Dept Computat & Data Sci, Fairfax, VA 22030 USA
关键词
graphics hardware; GPUs; Fortran; computational fluid dynamics; EULER;
D O I
10.1002/fld.2560
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
The development of automatic techniques to port a substantial portion of FEFLO, a general-purpose legacy CFD code operating on unstructured grids, to run on GPUs is described. FEFLO is a typical adaptive, edge-based finite element code for the solution of compressible and incompressible flows, which is primarily written in Fortran 77 and has previously been ported to vector, shared memory parallel and distributed memory parallel machines. Owing to the large size of FEFLO and the likelihood of human error in porting, as well as the desire for continued development within a single codebase, a specialized Python script, based on FParser (Int. J. Comput. Sci. Eng. 2009; 4:296305), was written to perform automated translation from the OpenMP-parallelized edge and point loops to GPU kernels implemented in CUDA, along with GPU memory management. The results of verification benchmarks and performance indicate that performances achieved by such a translator can rival those of codes rewritten by specialists. The approach should be of general interest, as how best to run on GPUs is being presently considered for many so-called legacy codes. Copyright (C) 2011 John Wiley & Sons, Ltd.
引用
收藏
页码:314 / 331
页数:18
相关论文
共 50 条
[1]  
[Anonymous], 46 AIAA AER SCI M EX
[2]  
[Anonymous], 2009, OPENCL SPECIFICATION
[3]  
[Anonymous], SC 09 P C HIGH PERF
[4]  
Antoniou AS, 2010, 48 AIAA SCI M INCL N
[5]   Computational fluid dynamics of stented intracranial aneurysms using adaptive embedded unstructured grids [J].
Appanaboyina, S. ;
Mut, F. ;
Lohner, R. ;
Putman, C. A. ;
Cebral, J. R. .
INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN FLUIDS, 2008, 57 (05) :475-493
[6]   Unsteady CFD computations using vertex-centered finite volumes for unstructured grids on Graphics Processing Units [J].
Asouti, V. G. ;
Trompoukis, X. S. ;
Kampolis, I. C. ;
Giannakoglou, K. C. .
INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN FLUIDS, 2011, 67 (02) :232-246
[7]   MEGAFLOW: Parallel complete aircraft CFD [J].
Aumann, P ;
Barnewitz, H ;
Schwarten, H ;
Becker, K ;
Heinrich, R ;
Roll, B ;
Galle, M ;
Kroll, N ;
Gerhold, T ;
Schwamborn, D ;
Franke, M .
PARALLEL COMPUTING, 2001, 27 (04) :415-440
[8]   Acceleration of a two-dimensional Euler flow solver using commodity graphics hardware [J].
Brandvik, T. ;
Pullan, G. .
PROCEEDINGS OF THE INSTITUTION OF MECHANICAL ENGINEERS PART C-JOURNAL OF MECHANICAL ENGINEERING SCIENCE, 2007, 221 (12) :1745-1748
[9]  
Brandvik T., 2009, P GT2009 ASME TURB E
[10]  
Camelli F, 2006, AIAA AER SCI M REN N