Weather Research and Forecasting Model Explained (Part 3) - System Architecture and Parallelism
WRF ,as mentioned in part 1 and part2 , is a system designed for both operational and research purposes, and to run on systems from conventional laptops to super computers. The design of such a versatile system is a real challenge. In this post we will explore some of the WRF's Software Framework design and explain the functionality of the different layers of the system. Also we'll discuss how the system handles parallelism in different hardware environments. Software Framework Architecture [1][2] : (The following functionalities doesn't include parallelism handling) Figure1: Hierarchical WRF Software Design As it appears in Figure 1, the system design has 3 layers: The Driver Layer: It defines and allocates domains and associates them in a nest hierarchy. It also manages the flow of a system run as it's responsible for stepping the time for the loop mentioned in part1. And it's responsible for I/O operations. The Mediation Layer: It interfaces between...