Skip to main content

SPEL: Software tool for Porting E3SM Land Model with OpenACC in a Function Unit Test Framework

by Peter D Schwartz, Dali Wang, Fengming Yuan, Peter E Thornton
Publication Type
Conference Paper
Book Title
Proceeding of Accelerator Programming Using Directives
Publication Date
Page Numbers
43 to 51
Publisher Location
New Jersey, United States of America
Conference Name
Workshop on on Accelerator Programming Using Directives (WACCPD)
Conference Location
Dallas, Texas, United States of America
Conference Sponsor
Conference Date

Most high-end computers adopt hybrid architecture, porting a large-scale scientific code onto accelerators is necessary. The paper presents a generic method for porting large-scale scientific code onto accelerators using compiler directives within a modularized function unit test platform. We have implemented the method and designed a software tool (SPEL) to port the E3SM Land Model (ELM) onto the GPUs in the Summit computer. SPEL automatically generates GPU-ready test modules for all ELM functions, such as CanopyFlux, SoilTemperature, and EcosystemDynamics. SPEL breaks the ELM into a collection of standalone unit test programs for easy code verification and further performance improvement. We further optimize several ELM test modules with advanced techniques, including memory reduction, reconstructed parallel loops, and asynchronous GPU kernel launch. We hope our study will inspire new toolkit developments that expedite large-scale scientific code porting with compiler directives.