CS267 Assignment #0


I am a second-year graduate student in the Public Policy department. I have an undergraduate degree in EECS from Cal and worked as a programmer for several years; I have experience with C/C++ and pthreads, but from an applications/OS point of view. I am interested in learning about parallel design and algorithms and their potential application to computational economics.

The Parallel Ocean Program (POP)

The Parallel Ocean Program (POP) is an ocean circulation model developed at LANL used for eddy-resolving simulations of the world oceans and for climate simulations as the ocean component of coupled climate models. The model solves the three-dimensional primitive equations for fluid motions on the sphere under hydrostatic and Boussinesq approximations. Spatial derivatives are computed using finite-difference discretizations which are formulated to handle any generalized orthogonal grid on a sphere, including dipole and tripole grids which shift the North Pole singularity into land masses to avoid time step constraints due to grid convergence.

Platform & Language

POP was originally written in CM Fortran using a data-parallel approach for the Thinking Machines Connection Machine. Later versions used a more traditional domain decomposition style using MPI or SHMEM for inter-processor communications. The most recent version of the code can support hybrid parallism (threads/message-passing), and can be run on any machine with a compliant Fortran compiler.

Performance

The following benchmark "x1" is a relatively coarse resolution that is currently used in coupled climate models. The horizontal resolution is roughly one degree (320x384).

The next benchmark "0.1" has a horizontal grid of 3600x2400. It was too big to be run on most of the systems except for the Earth Simulator (currently #7 on Top500.org) and the Cheetah cluster at ORNL (currently #283).

References

P.W. Jones, P.H. Worley, Y. Yoshida, J. B. White III, J. Levesque (2005). "Practical performance portability in the Parallel Ocean Program (POP)". Concurrency and Computation: Practice and Experience, 2005; 17:1317-1327

rncarpio@berkeley.edu