...
Panel | |||||||||
---|---|---|---|---|---|---|---|---|---|
| |||||||||
There is an issue with OpenIFS when compiling with the Intel compiler at optimization level -O2 or above on chipsets that support SSE4.1 & AVX instructions. Users will see failure with the T21 test job similar to the following:
It arises because this compiler makes use of 2-way vectorization when compiling both branches of IF statements which can generate floating point exceptions if a zero divide is possible in the unexecuted branch and the IFS internal signal handler (DRHOOK) is enabled. There are several possible workarounds:
OpenIFS uses a default of -O1 in the configuration files. If you increase the optimisation level, please be aware of this issue. For more help with this issue, please contact openifs-support@ecmwf.int.This issue has been fixed in oifs38r1v05 and above. |
Panel | |||||||
---|---|---|---|---|---|---|---|
| |||||||
We are aware of a problem in grib_api when using the Intel compiler that seems to affect different versions of grib_api and causes the model to fail with a floating point exception (SIGFPE) in the routine PRESET_GRIB_TEMPLATE. The advice is to reduce the optimization level when compiling grib_api to -O1 rather than -O2. The error message that typifies this problem is:
|
...