Page tree

Oceananigans is an open source package for simulations of ocean fluid dynamic models on both CPUs and GPUs. It's part of CLiMA's big picture of building a new Earth system model that automatically learns from diverse data sources and scales up to provide more accurate predictions of climate-related hazards. The work is funded by the Schmidt Futures program and the National Science Foundation.

Backbone Algorithm: MIT General Circulation Model(GCM)

Focus:

  • Data-Driven Earth system modelling 
  • Easy adaption to GPUs and scaling to multiple processors


Examples

At NCI, we support researchers by providing the environment, facility and suggestions to run simulations using Oceananigans at scale easily and efficiently. Please follow the following pages to get started. 

Discussion: Efficiency and Scalability of Oceananigans

CPU vs GPU

We benchmarked a shallow water model on a single CPU vs a single GPU. The speedup increases as the grid size Ns*Ns increases. After Ns=4096, it reaches the plateau around 200x. 

The speedup for single-precision floating point is greater. If the simulation doesn't need double-precison, use float32 to achieve extra speedup.   

Multiple CPUs

We benchmarked a distributed shallow water model on multiple CPUs. 

The weak scaling result with the total workload of grid=4096*256*Np shows good scalability util 96 cores on normal queue nodes.

The strong scaling result with the total workload of grid=4096*4096 shows good scalability util 64 cores on normal queue nodes.

Multiple GPUs

We benchmarked a distributed shallow water model on multiple GPUs across multiple nodes.

The weak scaling result with the total workload of grid=4096*4096*Np shows good scalability util 4 V100 GPUs, within a single node, on gpuvolta queue nodes.


The strong scaling result with the total workload of grid=16384*16384 shows good scalability util 4 V100 GPUs, within a single node, on gpuvolta queue nodes .

  • No labels