Search papers, labs, and topics across Lattice.
This paper introduces a validation-centric workflow for AI-assisted GPU porting of a 250,000+ line legacy weather simulation code, CReSS, emphasizing the importance of maintaining scientific validity during the porting process. The approach leverages an AI agent to extract OpenMP regions, generate benchmarks from simulation states, and apply OpenACC transformations, while ensuring results are validated against reference data. The workflow achieved a 5.1x speedup in application-level performance and identified critical numerical discrepancies, highlighting the necessity of integrating validation into AI-assisted code transformation efforts.
Achieving a 5.1x speedup in a legacy weather simulation while ensuring scientific validity reveals the critical role of validation in AI-assisted GPU porting.
Recent advances in large language models have made CLI-based AI agents a practical tool for accelerating GPU porting of large legacy scientific applications. Such applications, however, are not merely old code bases; they are scientific assets whose credibility has been accumulated through long-term development, comparison with observations, and use in domain studies. GPU porting must therefore preserve this scientific validity while adapting the implementation to GPU-centric HPC systems. This paper presents a validation-centric AI-assisted GPU porting workflow through a case study of CReSS, a legacy Fortran weather simulation code with more than 250,000 lines. The workflow uses an AI agent to extract OpenMP regions, generate dump-based kernel benchmarks from physically meaningful simulation states, apply OpenACC transformations, and validate results through element-wise comparison with dumped reference data and application-level validation. Using a real typhoon simulation, the workflow produced numerically validated GPU implementations for 162 target kernels and achieved a 5.1x application-level speedup within practical wall-clock development cost. In particular, it detected numerical discrepancies in five kernels caused by floating-point and intrinsic-function differences, including threshold-sensitive branch divergence and cancellation effects, enabling feedback to the application developers. The case study suggests that, for large legacy scientific applications requiring dump-based validation, practical AI-assisted GPU porting must manage session-spanning context, runtime-state reconstruction, and costly recovery from small static-analysis omissions. These findings demonstrate that AI-assisted GPU porting requires not only code generation, but validation-centric workflow design.