https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117899

            Bug ID: 117899
           Summary: C++17 parallel execution policies with OpenMP backend
           Product: gcc
           Version: 15.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: krispyro at wanadoo dot fr
  Target Milestone: ---

Hi,

We would like to use C++17 parallel execution policies [1] provided by GCC with
the OpenMP backend.
The Intel TBB backend provided and maintained by Intel [2] can be used with
linker flag -ltbb but the OpenMP backend is desirable for at least the below
reasons:
*IntelTBB produce many true/false positives with ASAN and TSAN instrumentations
while OpenMP ASAN support looks good [3] and TSAN support is not clear [4].
*IntelTBB is not recommended by Intel nor AMD on AMD hardware
*Clang already supports it [5]
*By default system frozen IntelTBB is used (for instance tbb-2018 on RHEL 8,
tbb-2020 on RHEL 9...) for the IntelTBB backend. With an OpenMP backend the
backend could be upgraded with the compiler if parallel toolchain are used
(gcc-toolset on RHEL, Development Tools Module on SLES...).

>From the latest GCC git sources, there is only a placeholder for an OpenMP
backend. Currently only IntelTBB is supported for STL parallel algorithms. If
the OpenMP backend is not available is there a plan to add it?

Best regards,

Christophe Piault

[1] https://en.cppreference.com/w/cpp/algorithm/execution_policy_tag
[2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85998
[3] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97294
[4] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55561
[5] https://reviews.llvm.org/D99836?id=377510

Reply via email to