Intel® oneAPI Base Toolkit
Support for the core tools and libraries within the base toolkit that are used to build and deploy high-performance data-centric applications.
419 Discussions

Intel icc classic 2022.3 internal error in tbb library

Frank_R_1
Beginner
1,088 Views

Hi,

 

Consider the following file "reproducer.cxx":

////////////////////////////////////////////////////////////////////////////////////

#include <tbb/parallel_for.h>
void writeArray() {
tbb::parallel_for(tbb::blocked_range<int>(0, 1), [](const auto &range) {
});
}

////////////////////////////////////////////////////////////////////////////////////

 

We use Intel oneAPI 2022.3 on RHEL 7.9 with devtoolset-8 set. Compile the above with:

/software/intel/oneAPI/2022.3.0/linux/compiler/2022.2.0/linux/bin/intel64/icpc -I/software/intel/oneAPI/2022.3.0/linux/tbb/2021.7.0/include -mcmodel=medium -shared-intel -Wremarks -std=c++17 -O0 -inline-level=0 -c reproducer.cxx

 

The error output at the end is:

/software/intel/oneAPI/2022.3.0/linux/tbb/2021.7.0/include/tbb/../oneapi/tbb/parallel_for.h(163): internal error: assertion failed: construct_message: not all fill-ins used (error.c, line 3707 in construct_message)

 

Compile the above with (-Wremarks removed):

/software/intel/oneAPI/2022.3.0/linux/compiler/2022.2.0/linux/bin/intel64/icpc -I/software/intel/oneAPI/2022.3.0/linux/tbb/2021.7.0/include -mcmodel=medium -shared-intel  -std=c++17 -O0 -inline-level=0 -c reproducer.cxx

It works!

 

Questions:

What is the supported devtoolset on Linux RHEL7?

For the icx compiler (We can not use it because it produce wrong code on Windows and Linux) which minimal devtoolset and bin utils on Linux are requested?

 

Best regards

Frank

 

0 Kudos
8 Replies
SeshaP_Intel
Moderator
1,021 Views

Hi,


Thank you for posting in Intel Communities.

We were able to reproduce your issue. We have informed the development team about it.

We will get back to you soon.


Thanks and Regards,

Pendyala Sesha Srinivas


0 Kudos
SeshaP_Intel
Moderator
966 Views

Hi,


We have tried with icpx compiler using the below command and observed expected results.

icpx -O2 -c reproducer.cxx -Wremarks

We recommend you to use Intel® oneAPI DPC++/C++ Compiler (icpx). 

As Intel® C++ Compiler Classic (icpc) is deprecated and will be removed in a oneAPI release in the second half of 2023.

You can use -w2 flag as a workaround while trying with icc/icpc compiler.


Thanks and Regards,

Pendyala Sesha Srinivas


0 Kudos
Frank_R_1
Beginner
953 Views

Hi,

 

we tested with icx, icpx but there are too many errors which are generated.

From intel classic 2020.1 to 2022.3 all our tests run successfully and are green.

With icx we got a lot of errors and problems at runtime on both platforms Linux and Windows.

Therefore we can't transit to icx. Actually we would like to use icx but unfortunately there are too many problems.

We also do not get debug information on Linux, which is really a problem. Maybe the problem is devtoolset-7/8.

The gold linker also does not work with icx on Linux.

 

Best regards

Frank

0 Kudos
SeshaP_Intel
Moderator
925 Views

Hi,


As you are using RHEL 7, which was not officially supported by ICX. 

Please refer to the Intel® oneAPI DPC++/C++ Compiler System Requirements link below for more details.

https://www.intel.com/content/www/us/en/developer/articles/system-requirements/intel-oneapi-dpcpp-system-requirements.html


And supported minimum versions of distributed libraries that the compilers are built on: GCC - 7.3.0, BINUTILS- 2.30, GLIBC-2.27.

Devtoolset 7 doesn't meet the above minimum requirement as documented. Please refer to the below link for more details.

https://access.redhat.com/documentation/en-us/red_hat_developer_toolset/7/html/7.0_release_notes/dts7.0_release


Devtoolset 8 meets the first two minimal requirements but not the third which is GlibC (ships 2.17 versus expected version is glibc 2.27).

Please refer to page no:41 from the below link for more details.

https://access.redhat.com/documentation/en-us/red_hat_developer_toolset/8/pdf/user_guide/red_hat_developer_toolset-8-user_guide-en-us.pdf

This issue cannot be fixed in the classic compiler. Since the intel classic compiler is deprecated. 

And there is a workaround using -Wremarks. You can use -w2 as a workaround for icpc compiler.


Thanks and Regards,

Pendyala Sesha Srinivas


0 Kudos
Frank_R_1
Beginner
912 Views

Hi,

 

Thank you for this valuable information!

Then we must migrate to RHEL8 for new icx.

Nevertheless on Windows 10 we have severe problems when we run code produced by icx.

 

Best regards

0 Kudos
SeshaP_Intel
Moderator
885 Views

Hi,


Could you please provide the reproducer code with the steps you have followed?

And please share the error you are facing with icx compiler so that we can investigate more from our end.


Thanks and Regards,

Pendyala Sesha Srinivas



0 Kudos
SeshaP_Intel
Moderator
838 Views

Hi,


We haven't heard back from you. Could you please provide an update on your issue?


Thanks and Regards,

Pendyala Sesha Srinivas


0 Kudos
SeshaP_Intel
Moderator
793 Views

Hi,


We assume that your issue is resolved. If you need any additional information, please post a new question as this thread will no longer be monitored by Intel.


Thanks and Regards,

Pendyala Sesha Srinivas


0 Kudos
Reply