December 23rd 2020 Compilers Patch Release Announcement
Today we released Patch Release 2021.1.2 for the Intel® Compilers.
What is a "Patch Release"? This is a term from semantic versioning and is a new way we'll occasionally update our compilers in oneAPI. As you know, in the past with PSXE we did "Update" releases. These PSXE Updates were full PSXE packages including Compilers, Libraries and usually tools like Vtune, Intel MPI , etc. With oneAPI we will also release full Toolkit updates roughly every 3 months which will include updates to the compilers and all other components. But to be more agile getting fixes to our customers we have the option to release a compiler-ONLY update which is called a "Patch Release". So these packages have a complete compiler and compiler runtimes BUT nothing else. No MKL or IPP or other components. Just a new compiler. HIS MEANS YOU MUST HAVE AN EXISTING 2021.1.1 GOLD oneAPI Base and (optionally) HPC installation AND THEN install this PATCH 2021.1.2
What does this do to my current installation? Does it replace or overwrite my existing compiler? NO, it does not. It installs side-by-side with your existing compiler and the "latest" symbolic link is changed to point to the new compiler. Here is an example of directories after you install the Patch Release:
<installation root>/oneapi | |-> compiler/ !...the oneapi compilers installation root dir | |- 2021.1.1/ !...base dir for initial release v2021.1.1 |- 2021.1.2/ !...base dir for Patch Release 2021.1.2 |- latest->2021.1.2 !..latest link changed to Patch Release 2021.1.2
This is a Linux example. macOS is the same. Windows also uses the same layout (with \ instead of / obviously).
So as you see, your initial release 2021.1.1 is untouched BUT the 'latest' link now points to the new patch release. So you will get this release when you source the oneAPI oneapi/setvars.sh or run the Windows equivalent 'setvars.bat' since these scripts follow the 'latest' links for each component such as the compilers.
How can I switch back to the old compiler?
- command line: The easiest way is to first source the <install dir>/oneapi/setvars.sh, or the equivalent 'setvars.bat', which sets path to the latest compiler AND THEN we will source the compiler/env/vars.sh script (linux/mac example, windows same except for running the 'vars.bat' batch file)
source /opt/intel/oneapi/setvars.sh # ... now we switch to the 2021.1.1 version for the compilers source /opt/intel/oneapi/compiler/2021.1.1/env/vars.sh
the compiler/<version>/env/ directory holds a the compiler-only VARS script to set path to this explicit version, ignoring the latest/ link.
- Visual Studio - the same way you select the active Fortran compiler. The Patch compiler should show up as the default version, the older version can be selected instead.
What is in this Patch Release?
2 small changes:
- we fixed the version strings with the linux/mac --version output and the names in the Visual Studio integration.
- for Linux and Windows there is a fix in the OpenMP runtimes to work with the latest GPU drivers for those doing ICX OpenMP to Intel GPUs.
So do I need this patch?
- If you are trying to use ICX to OpenMP TARGET Intel GPUs then yes. And you need to read RELEASE NOTES and get the SPECIFIC driver listed there. This Patch Release needs that EXACT driver. Older version drivers will not work with this Patch Release, you need to update.
- If linux or macOS and you use the --version option to determine your compiler version
- If Windows Visual Studio integration, this will correctly name the IFX and IFORT compilers.
Are there any other fixes, features? NO. The above is ALL that is in this Patch Release.
How do I download it?
IRC - if you have your IRC account, expand the oneAPI HPC Toolkit like this:
Select the 2021.1.2 compiler and download as usual.
APT, YUM and other package managers: Do an 'update' to query the package manager which should show the update and then do an 'install'.
Direct downloads from the oneAPI Component Downloads page will have the C++ compiler downloads. Look for 2021.1.2 versions.
How do I install it? Download the Patch Release and run the installer. It should detect your existing installation and place the compiler in the compiler/2021.1.2/ directory and update the "latest" link. Or if you use a package manager installation run and 'update' and 'install' in your package manager.