Describe the Task
Create new environments for testing with at least one of the Intel oneAPI compilers available for download here.
There are licensing issues to compile software and provide software but not compiler code. While it may be possible to obtain oneAPI compilers without paying for it, we can’t distribute the compilers. We will need to download the compilers, compile the code, and then remove the compilers before sending up the image to DockerHub. Then, in MET, we will need to download the compilers, compile the code, and again remove the compilers before sending up the image to DockerHub. We need to ensure that we are using the same compiler version (leave a breadcrumb in the image so when MET can read the METbaseimage docker image breadcrumb and gets same compiler used for the library code in the METbaseimage.
See the I-WRF Dockerfile example created by David Hahn.
Consider adding the compiler family and version number to the Existing Builds section of the documentation to serve as documentation of compilers known to work. Consider also providing a summary table to list the union of GNU and Intel compilers known to work.
It would be nice to parameterize the Dockerfile or make a new Dockerfile on METbaseimage (probably 1 for GNU, 1 for intel) and would be nice to specify the version of Debian to use and if the Intel file could have arguments to specify version it's using.
Consider naming, for example:
MET-base-v3.3_gnu12
MET-base-v3.3_intel2025.0.1
Then, configure MET to pull from an updated version of the image.
Time Estimate
??
Sub-Issues
Consider breaking the task down into sub-issues.
Relevant Deadlines
12/19/24
Funding Source
Need account key.
Define the Metadata
Assignee
Labels
Projects and Milestone
Define Related Issue(s)
Consider the impact to the other METplus components.
Task Checklist
See the METplus Workflow for details.
Describe the Task
Create new environments for testing with at least one of the Intel oneAPI compilers available for download here.
There are licensing issues to compile software and provide software but not compiler code. While it may be possible to obtain oneAPI compilers without paying for it, we can’t distribute the compilers. We will need to download the compilers, compile the code, and then remove the compilers before sending up the image to DockerHub. Then, in MET, we will need to download the compilers, compile the code, and again remove the compilers before sending up the image to DockerHub. We need to ensure that we are using the same compiler version (leave a breadcrumb in the image so when MET can read the METbaseimage docker image breadcrumb and gets same compiler used for the library code in the METbaseimage.
See the I-WRF Dockerfile example created by David Hahn.
Consider adding the compiler family and version number to the Existing Builds section of the documentation to serve as documentation of compilers known to work. Consider also providing a summary table to list the union of GNU and Intel compilers known to work.
It would be nice to parameterize the Dockerfile or make a new Dockerfile on METbaseimage (probably 1 for GNU, 1 for intel) and would be nice to specify the version of Debian to use and if the Intel file could have arguments to specify version it's using.
Consider naming, for example:
MET-base-v3.3_gnu12
MET-base-v3.3_intel2025.0.1
Then, configure MET to pull from an updated version of the image.
Time Estimate
??
Sub-Issues
Consider breaking the task down into sub-issues.
Relevant Deadlines
12/19/24
Funding Source
Need account key.
Define the Metadata
Assignee
Labels
Projects and Milestone
Define Related Issue(s)
Consider the impact to the other METplus components.
Task Checklist
See the METplus Workflow for details.
Branch name:
feature_<Issue Number>_<Description>Pull request:
feature <Issue Number> <Description>Select: Reviewer(s) and Development issues
Select: Repository level development cycle Project for the next official release
Select: Milestone as the next official version