Dynamic Memory Control in a Parallel Implementation of an Operational Weather Forecast Model.
Rupert Ford, David Snelling, Alfred Dickinson · 1995
Dynamic memory allocation is a useful feature for the UM as it allows the precompilation of a large amount of the model code. Production runs of differing resolutions can then use this pre-compiled object code thus reducing their compilation time. Although sequentially free lists are effective for the UM on the KSR1, a shared free list for the memory allocator 'malloc' can seriously degrade performance in parallel. Thread based free lists or the separate allocation of memory from a threads stack alleviates this problem.