Responsibility over compute environments brings subtle challenges. The NextGen model engine itself does not contain scientific modeling code directly. Instead it aggregates independently developed models that implement a common standard: the Basic Model Interface (BMI). This gives NextGen access to any BMI-compatible model from the scientific community, but it adds some complexity to compute infrastructure. Compute environments must ensure setup of and compatibility with any BMI modules configured for use, which may mean (depending on the module) compiling libraries, installing dependencies, and other tasks. Generally, users bear the entire responsibility for these, but DMOD can aid users by streamlining and automating such tasks.
Here we will discuss how DMOD’s design simplifies these aspects of compute environment and infrastructure management. We will first detail how DMOD builds portable, consistent job worker execution environments using container technologies, e.g. Docker. We will then discuss how DMOD leverages these technologies effectively to make it easier for users to introduce externally-sourced BMI modules - either their own or those from the community - into the DMOD job workers, without any editing of the DMOD or NextGen source code.
- Indicates paper has been withdrawn from meeting
- Indicates an Award Winner