SPEL: Software Tool for Porting E3SM Land Model with OpenACC in a Function Unit Test Framework
DescriptionMost high-end computers adopt hybrid architectures, 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, DeepCopy, 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.
Event Type
Workshop
TimeFriday, 18 November 202210:57am - 11:24am CST
LocationD174
W
Accelerator-based Architectures
Compilers
Dataflow and Tasking
Directive Based Programming
Heterogeneous Systems
Parallel Programming Languages and Models
Runtime Systems
Recorded