Parallelising SHOC/COMPAS – challenges and techniques in ocean model codes

Mr Farhan Rizwi1

1CSIRO, Hobart, Australia


Computers are getting faster but are our ocean models keeping up? The clock speed of CPU’s has flat-lined for a number of years now and so the gain in performance is largely due to data parallelism. In this talk we present some of the challenges of parallelising ocean model code on modern HPC clusters and discuss some of the techniques we are exploring for our Coastal hydrodynamic models – both structured, SHOC, and unstructured, COMPAS, to get the most out of the latest computer architectures.  We have traditionally focused on high level parallelism, such as domain decomposition but there is also the opportunity to apply low-level, or fine-grained, parallelisation within each node or “window” for more efficiency, thereby boosting overall performance.  Hybrid schemes involving MPI, OpenMP and SIMD-type vectorization techniques are presented including consideration for GPU’s.


Farhan Rizwi has been professionally developing technical software since the year 2000. He started his software career on the Simulink engine development team at The Mathworks, Mass., US. Prior to that he studied Controls Systems engineering and has worked as an Electronics engineer at the special Chubb projects branch Chubb VISION, Sydney.

Currently, Farhan combines his knowledge of dynamical systems and software engineering skills to develop and implement Ocean modelling software within the Environmental Modelling Suite (EMS). He is the overall software architect of the EMS infrastructure that binds together the many packages of EMS.



AeRO is the industry association focused on eResearch in Australasia. We play a critical coordination role for our members, who are actively transforming research via Information Technology. Organisations join AeRO to advance their own capabilities and services, to collaborate and to network with peers. AeRO believes researchers and the sector significantly benefit from greater communication, coordination and sharing among the increasingly different and evolving service providers.