Constrained Migration of an Atmospheric Circulation Model

In the migration of large production codes from sequential to parallel implementations a total rewriting of the original code is often prohibited. The reason for this is that very complicated codes took years of evolution to reach a stable and reliable state. Exploring the possibilities for parallelization should therefore be done with extreme care rather than by means of a complete rewrite from scratch. In this paper we discuss the migration of an atmospheric simulation program as an example of such ’constrained migration’. We show that this type of migration allows for a fast and reliable, though not optimal, parallel implementation. Moreover it forces the researcher to identify locality and sequential hot spots in his code, thus guiding him into new strategies for a complete parallelization of the code.