COOKIES: By using this website you agree that we can place Google Analytics Cookies on your device for performance monitoring. |

University of Cambridge > Talks.cam > RSE Seminars > How not to write a convection parameterisation code?

## How not to write a convection parameterisation code?Add to your list(s) Download to your calendar using vCal - Mike Whitall - UK Meteorological Office
- Thursday 23 November 2023, 13:00-14:00
- JJ Thomson Seminar Room, Maxwell Centre.
If you have a question about this talk, please contact Jack Atkinson. Convection parameterisations are a crucial element of global atmospheric models. They simulate the vertical transport of heat, moisture and momentum by convective clouds, and associated rainfall. The majority of Tropical rainfall is associated with these clouds, which are too small-scale to explicitly resolve on the model’s grid and so need to be parameterised. Most global atmosphere models use a so-called “mass-flux” form of convection parameterisation, which consists of a diagnostic vertical integral to compute the properties of the clouds and the amount of heat / moisture entrained / detrained at each height. The calculations in a given vertical column of model grid-points are completely independent of those in other neighbouring columns, so it would be simplest to write the code so that it only considers a single column at a time. However, since we are performing a vertical integral the calculations at a given height within each column depend on the results from those calculations at the level below, so the scheme must be structured in a vertically sequential manner considering a single height-level at a time. Considering only a single column and a single height-level at a time amounts to computing only a single grid-point at a time. On CPU architectures, this is extremely inefficient; far greater computation speeds are obtained by doing many identical calculations simultaneously, via vectorisation. Another challenge / opportunity is the sparsity of the required calculations, since convective clouds only occupy a small fraction of the atmosphere’s volume. In this talk I discuss routes to exploiting both vectorisation and shared memory parallelisation, and how to make efficient use of memory given the sparsity, in the comorph convection parameterisation fortran code currently under development at the Met Office. However, current and future changes in software and HPC architectures (such as GPUs) may radically change the optimal code structure. Is there any way to adapt our convection code to these changes without completely rewriting it, or write it in a “future proof” way? Hybrid Zoom details will be emailed to the RSE mailing list; if you are not on the list, please contact the organisers. This talk is part of the RSE Seminars series. ## This talk is included in these lists:- Cambridge Centre for Data-Driven Discovery (C2D3)
- Cambridge talks
- Chris Davis' list
- Interested Talks
- JJ Thomson Seminar Room, Maxwell Centre
- RSE Seminars
- Trust & Technology Initiative - interesting events
- bld31
- ndk22's list
- ob366-ai4er
- rp587
- se393's list
Note that ex-directory lists are not shown. |
## Other listsWinton Discussions Nursing Essay Writing Service Faith and Peace## Other talkstitle and abstract tba Modelling airborne viral transmission in enclosed settings and comparing mitigations The many faces of living chiral crystals The impact of dysregulated metabolism on cardiovascular function Application of Machine Learning to Granular Processes |