Dr. William Vizuete’s team at the UNC department of Environmental Science and Engineering evaluates and uses a number of air quality models which are, in turn used by regulatory agencies to understand air quality issues. From Dr. Vizuete’s research page:
“Using high performance computers and three dimensional models to simulate the atmosphere, I am working to improve our understanding of the formation of atmospheric air pollution. These computer models improve our understanding of the extremely complex chemical and physical processes that occur in the atmosphere. A better understanding of the atmosphere gives us the knowledge to improve the tools and methods that policy makers use to make effective control strategies to clean the air above our dirtiest cities.”
Two models, CAMx by ENVIRON and CMAQ are heavily used.
We chose to start with CAMx because word on the street is that it’s easier to build than CMAQ. Well, it’s all relative.
Here’s the new automated build process for CAMx. It uses the Intel fortran compiler version 11.1 and builds an x86_64 binary that’s statically linked.
Also built in that process is a program called avgdif from the ENVIRON website. It is a standalone fortran program that compares the average difference between two runs. This allows us to validate execution of the CAMx test cases. It is slightly modified in order to have enough memory for this model (maxx and maxy are set to 120 near the top of the file). Finally, there’s a custom makefile for it to work with the Intel compiler.
CAMx has for several versions been OpenMP enabled. This is well suited for the OSG’s HTPC node concurrency model since the job can be configured to take advantage of all the CPUs on a node but does not require the additional complexity of a statically linked MPI launcher.
The new job is being tested now. A GlideinWMS submit script has been set up to launch the job to various HTPC compute venues. The job itself will:
- Fetch binaries from the RENCI continuous integration environment
- Fetch test cases from ENVIRON’s website
- Execute the test
- Execute avgdif on the outputs
- Return the results of avgdif
Once this is done, the environmental engineering community will be able to give it a try once they’ve joined the Engage VO.