3.4 Performance Analysis and Optimization of the Weather Research and Forecasting Model (WRF) Advection Schemes

Thursday, 26 January 2017: 11:15 AM
Conference Center: Chelan 2 (Washington State Convention Center )
Negin Sobhani, NCAR, Boulder, CO; and D. Del Vento

The Weather Research and Forecasting (WRF) model is an open source mesoscale numerical weather prediction (NWP) system extensively used in atmospheric research, operational forecasting and educational settings. For profiling and identifying the bottlenecks of WRF code, we used Allinea MAP, TAU (Tuning and Analysis Utilities) and Intel Vtune Amplifier XE. The results show that advection is the most time consuming routine in the ARW (Advanced Research WRF) dynamic solver. For further investigating the hotspots, the advection code is extracted from the WRF Fortran code as a separate kernel. WRF model uses the Runge-Kutta (RK) 3rd order for integrating the time, and 2nd through 6th order advection schemes in both horizontal and vertical directions. This basic RK scheme will produce negative values and oscillations near sharp gradients due to the numerical dispersion errors. Positive definite and monotonic flux limiter schemes are used for reducing the negative values and spurious oscillations from the dispersion errors.

We designed a testing framework for optimizing, compiling, profiling, and evaluating the kernel with different Fortran compilers including Intel, GNU, and PGI compilers. Several optimization techniques including exposing more vectorization and improving the cache hit rates are utilized on the advection modules and the outputs are verified. Reasonable speed-up (up to 4x) can be achieved on different compilers using the modified advection kernel.

- Indicates paper has been withdrawn from meeting
- Indicates an Award Winner