WW3 GPU Lab: agentic coding and agentic research on a bit-for-bit GPU port of WAVEWATCH III
- 1. LabECO, Departamento de Engenharia Mecânica, Universidade Federal de Santa Catarina
- 2. Grupo de Teleinformática e Automação (GTA), Departamento de Engenharia Eletrônica e de Computação (DEL), Escola Politécnica, Universidade Federal do Rio de Janeiro
Description
Software and texts on one problem: moving the expensive kernels of the WAVEWATCH III (WW3) third-generation spectral wind-wave model to GPUs without changing the answer.
- A Nix-pinned toolchain to build and run the Fortran model on real cases with annotated switch files.
- Benchmarks on CPU (OpenMP, MPI) and GPU (OpenACC, CUDA Fortran), each number with the command that reproduces it.
- A C++/Kokkos port of W3SNL1, the Discrete Interaction Approximation (DIA) of nonlinear four-wave interactions, written with coding agents and shown bit-identical to the Fortran on the Serial, OpenMP and CUDA backends by a field-by-field parity harness.
- The method itself: the rules coding agents follow here, design docs with a definition of done (WFIPs), decision records (ADRs), a research log, and plans whose every claim carries its evidence.
- chaceon (https://github.com/h0ffmann/chaceon), WAVEWATCH III written in Rust, the twin of the Kokkos port: a submodule that the same run command builds and compares with the Fortran reference, MetOcean's WAVEWATCH III 7.14.
The website is https://wave.piabrota.art/. Includes runnable examples, the preprint "Wave models on GPUs", which compares the Kokkos and Rust ports (pubs/preprint/wave-models-on-gpus.pdf, with a Brazilian Portuguese edition in pubs/preprint/wave-models-on-gpus.pt-BR.pdf), and an undergraduate project proposal (Escola Politécnica, UFRJ, co-advised at LabECO, UFSC).
Notes
Files
h0ffmann/ww3-gpu-v0.2.0.zip
Additional details
Software
- Repository URL
- https://github.com/h0ffmann/ww3-gpu