-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enhance "compile_MET_all.sh" to support the new Intel oneAPI compilers and upgrade dependent library versions as needed #2611
Comments
@jprestop Reminder to self to update Tor on how this goes. |
Some work done on Derecho to upgrade the following libraries
with new oneAPI compilers. Had success with all but BUFRLIB. Need to get BUFRLIB to compile before I can get MET to compile. |
Update: I was successfully able to install BUFRLIB 11.6.0 using the new oneAPI compilers. I have posted on the BUFRLIB GitHub Discussions forum with further detail about the problems with 11.5.0 and 11.7.0: BUFRLIB compilation with oneAPI compilers? #530 On to compiling MET... |
@jprestop Let me know and I will also verify
…On Thu, Oct 19, 2023, 3:04 PM Julie Prestopnik ***@***.***> wrote:
Update: I was successfully able to install BUFRLIB 11.6.0 using the new
oneAPI compilers. I have posted on the BUFRLIB GitHub Discussions forum
with further detail about the problems with 11.5.0 and 11.7.0:
BUFRLIB compilation with oneAPI compilers? #530
<NOAA-EMC/NCEPLIBS-bufr#530>
On to compiling MET...
—
Reply to this email directly, view it on GitHub
<#2611 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/A4FUT5RKGWAW2T7FI5C4ICLYAGBV3AVCNFSM6AAAAAA2NCNSWGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZRGYZDSNBVGY>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Update: I was getting this error in the met.make.log file:
After a little research, I ended up on the oneAPI Release Notes page, which indicates that this is a known problem:
The solution involves installing "GNU Autoconf-2.70 or newer". On Derecho exists version 2.71 where I was able to run "autoreconf -if" to recreate the configure file using autoconf 2.71. Using the new configure script I was able to get a successful compilation of MET using the one API compilers on Derecho. We are using autoconf version 2.71 in our automated Docker builds for our test code. |
…in internal/scripts/docker/build_met_docker.sh
…in internal/scripts/docker/build_met_docker.sh
… the BUFRLIB_NAME and GRIB2CLIB_NAME
…branch to this new (limited) feature_2611_oneapi_met-basev3.1 branch. This includes updates to compile_MET_all.sh to compile Atlas/ecKit, updates to the development.docker environment, and the installation settings for derecho.
…des updated dependent library versions as well as the Atlas and ecKit libraries.
This work was completed with PR #2737. |
Describe the Task
Upgrade some of MET's external dependencies (based on availability on WCOSS2):
and ensure that MET and its dependencies compile with the new Intel oneAPI Compilers.
Also include changes for Enhance MET to compile and link against the Atlas and ecKit libraries #2574. Atlas and ecKit will be optional libraries. We will use the following versions based on availability on WCOSS2:
Atlas 0.30.0
EcKit 1.20.2
Note that METbaseimage will need to be updated along with enhancing the Dockerfile to allow the MET branch and tarfile location to be defined at build time. METbaseimage will provides a test for the GNU compilers, but not Intel ones.
In the second half of 2023 Intel will be ending their classic compilers for the new Intel LLVM-based compilers Intel® oneAPI C++ Compiler (ICX)(https://www.intel.com/content/www/us/en/developer/articles/technical/getting-to-know-llvm-based-oneapi-compilers.html#:~:text=Intel%20oneAPI%20DPC%2B%2B%2FC%2B%2B%20Compiler,-oneAPI's%20Data%20Parallel&text=It's%20built%20on%20LLVM%20and,C%2B%2B%20for%20heterogeneous%20computing%20platforms.)
The porting guide from intel classic compilers to intel llvm compilers can be found here:
https://www.intel.com/content/www/us/en/developer/articles/guide/porting-guide-for-ifort-to-ifx.html
https://www.intel.com/content/www/us/en/developer/articles/guide/porting-guide-for-icc-users-to-dpcpp-or-icx.html
According to intel it should be a simple change to use these exports:
Will Hatheway used the above exports MET but found several errors. See attached here in a zip file.
MET_intel_llvm.zip
Time Estimate
3 days
Sub-Issues
Consider breaking the task down into sub-issues.
Relevant Deadlines
12.0.0 release
Funding Source
2702691
Define the Metadata
Assignee
Labels
Projects and Milestone
Define Related Issue(s)
Consider the impact to the other METplus components.
METbaseimage will need to be updated
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 issue
Select: Milestone as the next official version
Select: MET-X.Y.Z Development project for development toward the next official release
The text was updated successfully, but these errors were encountered: