* [PATCH] Remove dead code. @ 2021-11-08 8:45 Martin Liška 2021-11-08 8:59 ` Jakub Jelinek 0 siblings, 1 reply; 25+ messages in thread From: Martin Liška @ 2021-11-08 8:45 UTC (permalink / raw) To: gcc-patches; +Cc: Jakub Jelinek, Tobias Burnus This fixes issue reported in the PR. Ready to be installed? Thanks, Martin PR other/89259 liboffloadmic/ChangeLog: * runtime/offload_omp_host.cpp: Remove size < 0 for a size of size_t type. --- liboffloadmic/runtime/offload_omp_host.cpp | 5 ----- 1 file changed, 5 deletions(-) diff --git a/liboffloadmic/runtime/offload_omp_host.cpp b/liboffloadmic/runtime/offload_omp_host.cpp index 0439fec313b..4d8c57e3385 100644 --- a/liboffloadmic/runtime/offload_omp_host.cpp +++ b/liboffloadmic/runtime/offload_omp_host.cpp @@ -688,11 +688,6 @@ int omp_target_associate_ptr( return 1; } - // An incorrect size is treated as failure - if (size < 0) { - return 1; - } - // If OpenMP allows wrap-around for device numbers, enable next line //Engine& device = mic_engines[device_num % mic_engines_total]; Engine& device = mic_engines[device_num]; -- 2.33.1 ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [PATCH] Remove dead code. 2021-11-08 8:45 [PATCH] Remove dead code Martin Liška @ 2021-11-08 8:59 ` Jakub Jelinek 2021-11-08 14:19 ` Jeff Law 0 siblings, 1 reply; 25+ messages in thread From: Jakub Jelinek @ 2021-11-08 8:59 UTC (permalink / raw) To: Martin Liška, hjl.tools; +Cc: gcc-patches, Tobias Burnus On Mon, Nov 08, 2021 at 09:45:39AM +0100, Martin Liška wrote: > This fixes issue reported in the PR. > > Ready to be installed? I'm not sure. liboffloadmic is copied from upstream, so the right thing if we want to do anything at all (if we don't remove it, nothing bad happens, the condition is never true anyway, whether removed away in the source or removed by the compiler) would be to let Intel fix it in their source and update from that. But I have no idea where it even lives upstream. Jakub ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [PATCH] Remove dead code. 2021-11-08 8:59 ` Jakub Jelinek @ 2021-11-08 14:19 ` Jeff Law 2021-11-12 14:27 ` Martin Liška 0 siblings, 1 reply; 25+ messages in thread From: Jeff Law @ 2021-11-08 14:19 UTC (permalink / raw) To: Jakub Jelinek, Martin Liška, hjl.tools; +Cc: Tobias Burnus, gcc-patches On 11/8/2021 2:59 AM, Jakub Jelinek via Gcc-patches wrote: > On Mon, Nov 08, 2021 at 09:45:39AM +0100, Martin Liška wrote: >> This fixes issue reported in the PR. >> >> Ready to be installed? > I'm not sure. liboffloadmic is copied from upstream, so the right > thing if we want to do anything at all (if we don't remove it, nothing > bad happens, the condition is never true anyway, whether removed away > in the source or removed by the compiler) would be to let Intel fix it in > their source and update from that. > But I have no idea where it even lives upstream. I thought MIC as an architecture was dead, so it could well be the case that there isn't a viable upstream anymore for that code. jeff ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [PATCH] Remove dead code. 2021-11-08 14:19 ` Jeff Law @ 2021-11-12 14:27 ` Martin Liška 2021-11-12 14:41 ` H.J. Lu 0 siblings, 1 reply; 25+ messages in thread From: Martin Liška @ 2021-11-12 14:27 UTC (permalink / raw) To: Jeff Law, Jakub Jelinek, hjl.tools; +Cc: Tobias Burnus, gcc-patches On 11/8/21 15:19, Jeff Law wrote: > > > On 11/8/2021 2:59 AM, Jakub Jelinek via Gcc-patches wrote: >> On Mon, Nov 08, 2021 at 09:45:39AM +0100, Martin Liška wrote: >>> This fixes issue reported in the PR. >>> >>> Ready to be installed? >> I'm not sure. liboffloadmic is copied from upstream, so the right >> thing if we want to do anything at all (if we don't remove it, nothing >> bad happens, the condition is never true anyway, whether removed away >> in the source or removed by the compiler) would be to let Intel fix it in >> their source and update from that. >> But I have no idea where it even lives upstream. > I thought MIC as an architecture was dead, so it could well be the case that there isn't a viable upstream anymore for that code. > > jeff @H.J. ? Martin ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [PATCH] Remove dead code. 2021-11-12 14:27 ` Martin Liška @ 2021-11-12 14:41 ` H.J. Lu 2021-11-12 14:44 ` Martin Liška ` (2 more replies) 0 siblings, 3 replies; 25+ messages in thread From: H.J. Lu @ 2021-11-12 14:41 UTC (permalink / raw) To: Martin Liška, Hongtao Liu Cc: Jeff Law, Jakub Jelinek, Tobias Burnus, GCC Patches On Fri, Nov 12, 2021 at 6:27 AM Martin Liška <mliska@suse.cz> wrote: > > On 11/8/21 15:19, Jeff Law wrote: > > > > > > On 11/8/2021 2:59 AM, Jakub Jelinek via Gcc-patches wrote: > >> On Mon, Nov 08, 2021 at 09:45:39AM +0100, Martin Liška wrote: > >>> This fixes issue reported in the PR. > >>> > >>> Ready to be installed? > >> I'm not sure. liboffloadmic is copied from upstream, so the right > >> thing if we want to do anything at all (if we don't remove it, nothing > >> bad happens, the condition is never true anyway, whether removed away > >> in the source or removed by the compiler) would be to let Intel fix it in > >> their source and update from that. > >> But I have no idea where it even lives upstream. > > I thought MIC as an architecture was dead, so it could well be the case that there isn't a viable upstream anymore for that code. > > > > jeff > > @H.J. ? > We'd like to deprecate MIC offload in GCC 12. We will remove all traces of MIC offload in GCC 13. -- H.J. ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [PATCH] Remove dead code. 2021-11-12 14:41 ` H.J. Lu @ 2021-11-12 14:44 ` Martin Liška 2021-11-12 15:00 ` H.J. Lu 2021-11-12 19:14 ` Richard Biener 2022-10-20 11:15 ` Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) Thomas Schwinge 2 siblings, 1 reply; 25+ messages in thread From: Martin Liška @ 2021-11-12 14:44 UTC (permalink / raw) To: H.J. Lu, Hongtao Liu; +Cc: Jeff Law, Jakub Jelinek, Tobias Burnus, GCC Patches On 11/12/21 15:41, H.J. Lu wrote: > On Fri, Nov 12, 2021 at 6:27 AM Martin Liška <mliska@suse.cz> wrote: >> >> On 11/8/21 15:19, Jeff Law wrote: >>> >>> >>> On 11/8/2021 2:59 AM, Jakub Jelinek via Gcc-patches wrote: >>>> On Mon, Nov 08, 2021 at 09:45:39AM +0100, Martin Liška wrote: >>>>> This fixes issue reported in the PR. >>>>> >>>>> Ready to be installed? >>>> I'm not sure. liboffloadmic is copied from upstream, so the right >>>> thing if we want to do anything at all (if we don't remove it, nothing >>>> bad happens, the condition is never true anyway, whether removed away >>>> in the source or removed by the compiler) would be to let Intel fix it in >>>> their source and update from that. >>>> But I have no idea where it even lives upstream. >>> I thought MIC as an architecture was dead, so it could well be the case that there isn't a viable upstream anymore for that code. >>> >>> jeff >> >> @H.J. ? >> > > We'd like to deprecate MIC offload in GCC 12. We will remove all traces of > MIC offload in GCC 13. I see. So do you want the patch to be installed or not? Cheers, Martin > > ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [PATCH] Remove dead code. 2021-11-12 14:44 ` Martin Liška @ 2021-11-12 15:00 ` H.J. Lu 0 siblings, 0 replies; 25+ messages in thread From: H.J. Lu @ 2021-11-12 15:00 UTC (permalink / raw) To: Martin Liška Cc: Hongtao Liu, Jeff Law, Jakub Jelinek, Tobias Burnus, GCC Patches On Fri, Nov 12, 2021 at 6:44 AM Martin Liška <mliska@suse.cz> wrote: > > On 11/12/21 15:41, H.J. Lu wrote: > > On Fri, Nov 12, 2021 at 6:27 AM Martin Liška <mliska@suse.cz> wrote: > >> > >> On 11/8/21 15:19, Jeff Law wrote: > >>> > >>> > >>> On 11/8/2021 2:59 AM, Jakub Jelinek via Gcc-patches wrote: > >>>> On Mon, Nov 08, 2021 at 09:45:39AM +0100, Martin Liška wrote: > >>>>> This fixes issue reported in the PR. > >>>>> > >>>>> Ready to be installed? > >>>> I'm not sure. liboffloadmic is copied from upstream, so the right > >>>> thing if we want to do anything at all (if we don't remove it, nothing > >>>> bad happens, the condition is never true anyway, whether removed away > >>>> in the source or removed by the compiler) would be to let Intel fix it in > >>>> their source and update from that. > >>>> But I have no idea where it even lives upstream. > >>> I thought MIC as an architecture was dead, so it could well be the case that there isn't a viable upstream anymore for that code. > >>> > >>> jeff > >> > >> @H.J. ? > >> > > > > We'd like to deprecate MIC offload in GCC 12. We will remove all traces of > > MIC offload in GCC 13. > > I see. So do you want the patch to be installed or not? > I prefer to leave it alone and close the PR with WONTFIX. -- H.J. ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [PATCH] Remove dead code. 2021-11-12 14:41 ` H.J. Lu 2021-11-12 14:44 ` Martin Liška @ 2021-11-12 19:14 ` Richard Biener 2021-11-12 19:18 ` H.J. Lu 2022-10-20 11:15 ` Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) Thomas Schwinge 2 siblings, 1 reply; 25+ messages in thread From: Richard Biener @ 2021-11-12 19:14 UTC (permalink / raw) To: H.J. Lu, H.J. Lu via Gcc-patches, Martin Liška, Hongtao Liu Cc: Jakub Jelinek, GCC Patches, Tobias Burnus On November 12, 2021 3:41:41 PM GMT+01:00, "H.J. Lu via Gcc-patches" <gcc-patches@gcc.gnu.org> wrote: >On Fri, Nov 12, 2021 at 6:27 AM Martin Liška <mliska@suse.cz> wrote: >> >> On 11/8/21 15:19, Jeff Law wrote: >> > >> > >> > On 11/8/2021 2:59 AM, Jakub Jelinek via Gcc-patches wrote: >> >> On Mon, Nov 08, 2021 at 09:45:39AM +0100, Martin Liška wrote: >> >>> This fixes issue reported in the PR. >> >>> >> >>> Ready to be installed? >> >> I'm not sure. liboffloadmic is copied from upstream, so the right >> >> thing if we want to do anything at all (if we don't remove it, nothing >> >> bad happens, the condition is never true anyway, whether removed away >> >> in the source or removed by the compiler) would be to let Intel fix it in >> >> their source and update from that. >> >> But I have no idea where it even lives upstream. >> > I thought MIC as an architecture was dead, so it could well be the case that there isn't a viable upstream anymore for that code. >> > >> > jeff >> >> @H.J. ? >> > >We'd like to deprecate MIC offload in GCC 12. We will remove all traces of >MIC offload in GCC 13. Can you document that in gcc-12/changes.html in the caveats section please? Thanks, Richard. > ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [PATCH] Remove dead code. 2021-11-12 19:14 ` Richard Biener @ 2021-11-12 19:18 ` H.J. Lu 2021-11-12 19:52 ` Richard Biener 0 siblings, 1 reply; 25+ messages in thread From: H.J. Lu @ 2021-11-12 19:18 UTC (permalink / raw) To: Richard Biener Cc: H.J. Lu via Gcc-patches, Martin Liška, Hongtao Liu, Jakub Jelinek, Tobias Burnus On Fri, Nov 12, 2021 at 11:15 AM Richard Biener <richard.guenther@gmail.com> wrote: > > On November 12, 2021 3:41:41 PM GMT+01:00, "H.J. Lu via Gcc-patches" <gcc-patches@gcc.gnu.org> wrote: > >On Fri, Nov 12, 2021 at 6:27 AM Martin Liška <mliska@suse.cz> wrote: > >> > >> On 11/8/21 15:19, Jeff Law wrote: > >> > > >> > > >> > On 11/8/2021 2:59 AM, Jakub Jelinek via Gcc-patches wrote: > >> >> On Mon, Nov 08, 2021 at 09:45:39AM +0100, Martin Liška wrote: > >> >>> This fixes issue reported in the PR. > >> >>> > >> >>> Ready to be installed? > >> >> I'm not sure. liboffloadmic is copied from upstream, so the right > >> >> thing if we want to do anything at all (if we don't remove it, nothing > >> >> bad happens, the condition is never true anyway, whether removed away > >> >> in the source or removed by the compiler) would be to let Intel fix it in > >> >> their source and update from that. > >> >> But I have no idea where it even lives upstream. > >> > I thought MIC as an architecture was dead, so it could well be the case that there isn't a viable upstream anymore for that code. > >> > > >> > jeff > >> > >> @H.J. ? > >> > > > >We'd like to deprecate MIC offload in GCC 12. We will remove all traces of > >MIC offload in GCC 13. > > Can you document that in gcc-12/changes.html in the caveats section please? > I will do that. Can you review my last wwwdocs change: https://gcc.gnu.org/pipermail/gcc-patches/2021-August/578344.html Thanks. -- H.J. ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [PATCH] Remove dead code. 2021-11-12 19:18 ` H.J. Lu @ 2021-11-12 19:52 ` Richard Biener 0 siblings, 0 replies; 25+ messages in thread From: Richard Biener @ 2021-11-12 19:52 UTC (permalink / raw) To: H.J. Lu Cc: H.J. Lu via Gcc-patches, Martin Liška, Hongtao Liu, Jakub Jelinek, Tobias Burnus On November 12, 2021 8:18:59 PM GMT+01:00, "H.J. Lu" <hjl.tools@gmail.com> wrote: >On Fri, Nov 12, 2021 at 11:15 AM Richard Biener ><richard.guenther@gmail.com> wrote: >> >> On November 12, 2021 3:41:41 PM GMT+01:00, "H.J. Lu via Gcc-patches" <gcc-patches@gcc.gnu.org> wrote: >> >On Fri, Nov 12, 2021 at 6:27 AM Martin Liška <mliska@suse.cz> wrote: >> >> >> >> On 11/8/21 15:19, Jeff Law wrote: >> >> > >> >> > >> >> > On 11/8/2021 2:59 AM, Jakub Jelinek via Gcc-patches wrote: >> >> >> On Mon, Nov 08, 2021 at 09:45:39AM +0100, Martin Liška wrote: >> >> >>> This fixes issue reported in the PR. >> >> >>> >> >> >>> Ready to be installed? >> >> >> I'm not sure. liboffloadmic is copied from upstream, so the right >> >> >> thing if we want to do anything at all (if we don't remove it, nothing >> >> >> bad happens, the condition is never true anyway, whether removed away >> >> >> in the source or removed by the compiler) would be to let Intel fix it in >> >> >> their source and update from that. >> >> >> But I have no idea where it even lives upstream. >> >> > I thought MIC as an architecture was dead, so it could well be the case that there isn't a viable upstream anymore for that code. >> >> > >> >> > jeff >> >> >> >> @H.J. ? >> >> >> > >> >We'd like to deprecate MIC offload in GCC 12. We will remove all traces of >> >MIC offload in GCC 13. >> >> Can you document that in gcc-12/changes.html in the caveats section please? >> > >I will do that. > >Can you review my last wwwdocs change: > >https://gcc.gnu.org/pipermail/gcc-patches/2021-August/578344.html That change is OK. Richard. >Thanks. > ^ permalink raw reply [flat|nested] 25+ messages in thread
* Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) 2021-11-12 14:41 ` H.J. Lu 2021-11-12 14:44 ` Martin Liška 2021-11-12 19:14 ` Richard Biener @ 2022-10-20 11:15 ` Thomas Schwinge 2022-10-20 11:34 ` Jakub Jelinek ` (2 more replies) 2 siblings, 3 replies; 25+ messages in thread From: Thomas Schwinge @ 2022-10-20 11:15 UTC (permalink / raw) To: H.J. Lu, Hongtao Liu, gcc-patches Cc: Martin Liška, Jakub Jelinek, Tobias Burnus, Michael Matz, Richard Biener [-- Attachment #1: Type: text/plain, Size: 2389 bytes --] Hi! On 2021-11-12T06:41:41-0800, "H.J. Lu via Gcc-patches" <gcc-patches@gcc.gnu.org> wrote: > On Fri, Nov 12, 2021 at 6:27 AM Martin Liška <mliska@suse.cz> wrote: >> On 11/8/21 15:19, Jeff Law wrote: >> > On 11/8/2021 2:59 AM, Jakub Jelinek via Gcc-patches wrote: >> >> liboffloadmic is copied from upstream [...] >> >> But I have no idea where it even lives upstream. >> > I thought MIC as an architecture was dead, so it could well be the case that there isn't a viable upstream anymore for that code. >> >> @H.J. ? > > We'd like to deprecate MIC offload in GCC 12. This had been done in wwwdocs commit 5c7ecfb5627e412a3d142d8dc212f4cd39b3b73f "Document deprecation of OpenMP MIC offloading in GCC 12". I'm sad about this, because -- in theory -- such a plugin is very useful for offloading simulation/debugging (separate host/device memory spaces, allow sanitizers to run on offloaded code (like LLVM a while ago implemented), and so on), but all that doesn't help -- in practice -- if nobody is maintaining that code. Also, currently that (very "bulky") code is buildable for x86/x86_64 GNU/Linux only (again for no particular reason, as far as I can tell). > We will remove all traces of > MIC offload in GCC 13. This had come up again at the GNU Tools Cauldron 2022 (relevant folks CCed), and I had been tasked to execute that. Explicitly note that this does not bear any relationship with our ongoing work to support offloading to AMD and Nvidia GPUs: the more, the merrier, as far as I'm concerned, and actually I had been testing Intel MIC (emulated) offloading until a few days ago. (Also, I had been curious about support for Intel GPUs -- <https://inbox.sourceware.org/gcc/87v933nlhn.fsf@dem-tschwing-1.ger.mentorg.com/> "GCC/OpenMP offloading for Intel GPUs?" -- but Intel don't seem interested in working on that themselves?) I'm proposing the attached "Remove support for Intel MIC offloading" (generated with 'git format-patch --irreversible-delete', and 'diff's for regenerated files manually snipped, to reduce its size). Grüße Thomas ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955 [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: 0001-Remove-support-for-Intel-MIC-offloading.patch --] [-- Type: text/x-diff, Size: 44613 bytes --] From cedd4fa1ad2ee78355d75b30696669716cc9546e Mon Sep 17 00:00:00 2001 From: Thomas Schwinge <thomas@codesourcery.com> Date: Mon, 17 Oct 2022 22:19:55 +0200 Subject: [PATCH] Remove support for Intel MIC offloading --- Makefile.def | 8 - Makefile.in | 520 +- configure | 66 +- configure.ac | 57 +- contrib/gcc-changelog/git_commit.py | 1 - contrib/gcc_update | 6 - contrib/update-copyright.py | 1 - gcc/config.gcc | 8 - gcc/config/i386/i386-options.cc | 4 - gcc/config/i386/intelmic-mkoffload.cc | 728 - gcc/config/i386/intelmic-offload.h | 35 - gcc/config/i386/t-intelmic | 10 - gcc/config/i386/t-omp-device | 6 - gcc/configure | 14 +- gcc/configure.ac | 10 - gcc/doc/install.texi | 2 +- gcc/doc/sourcebuild.texi | 3 - include/gomp-constants.h | 3 +- libgomp/configure | 3 - libgomp/libgomp-plugin.h | 1 - libgomp/libgomp.texi | 4 - libgomp/plugin/configfrag.ac | 3 - libgomp/testsuite/lib/libgomp.exp | 37 - .../libgomp.c-c++-common/on_device_arch.h | 35 - .../libgomp.c-c++-common/target-45.c | 2 - .../testsuite/libgomp.fortran/target10.f90 | 1 - liboffloadmic/ChangeLog | 765 - liboffloadmic/Makefile.am | 160 - liboffloadmic/Makefile.in | 1310 -- liboffloadmic/aclocal.m4 | 1180 -- liboffloadmic/configure | 17512 ---------------- liboffloadmic/configure.ac | 143 - liboffloadmic/configure.tgt | 39 - liboffloadmic/doc/doxygen/config | 2328 -- liboffloadmic/doc/doxygen/header.tex | 90 - .../include/coi/common/COIEngine_common.h | 121 - .../include/coi/common/COIEvent_common.h | 84 - .../include/coi/common/COIMacros_common.h | 229 - .../include/coi/common/COIPerf_common.h | 87 - .../include/coi/common/COIResult_common.h | 148 - .../include/coi/common/COISysInfo_common.h | 126 - .../include/coi/common/COITypes_common.h | 88 - .../include/coi/sink/COIBuffer_sink.h | 133 - .../include/coi/sink/COIPipeline_sink.h | 137 - .../include/coi/sink/COIProcess_sink.h | 174 - .../include/coi/source/COIBuffer_source.h | 1806 -- .../include/coi/source/COIEngine_source.h | 273 - .../include/coi/source/COIEvent_source.h | 301 - .../include/coi/source/COIPipeline_source.h | 437 - .../include/coi/source/COIProcess_source.h | 1235 -- liboffloadmic/liboffloadmic_host.spec.in | 3 - liboffloadmic/liboffloadmic_target.spec.in | 3 - liboffloadmic/plugin/Makefile.am | 125 - liboffloadmic/plugin/Makefile.in | 840 - liboffloadmic/plugin/aclocal.m4 | 1180 -- liboffloadmic/plugin/configure | 17000 --------------- liboffloadmic/plugin/configure.ac | 147 - .../plugin/libgomp-plugin-intelmic.cpp | 545 - liboffloadmic/plugin/offload_target_main.cpp | 380 - liboffloadmic/runtime/cean_util.cpp | 421 - liboffloadmic/runtime/cean_util.h | 137 - liboffloadmic/runtime/coi/coi_client.cpp | 494 - liboffloadmic/runtime/coi/coi_client.h | 176 - liboffloadmic/runtime/coi/coi_server.cpp | 180 - liboffloadmic/runtime/coi/coi_server.h | 94 - liboffloadmic/runtime/compiler_if_host.cpp | 501 - liboffloadmic/runtime/compiler_if_host.h | 209 - liboffloadmic/runtime/compiler_if_target.cpp | 64 - liboffloadmic/runtime/compiler_if_target.h | 70 - liboffloadmic/runtime/dv_util.cpp | 153 - liboffloadmic/runtime/dv_util.h | 84 - liboffloadmic/runtime/emulator/coi_common.h | 168 - liboffloadmic/runtime/emulator/coi_device.cpp | 401 - liboffloadmic/runtime/emulator/coi_device.h | 66 - liboffloadmic/runtime/emulator/coi_host.cpp | 1634 -- liboffloadmic/runtime/emulator/coi_host.h | 65 - .../runtime/emulator/coi_version_asm.h | 91 - .../emulator/coi_version_linker_script.map | 91 - liboffloadmic/runtime/liboffload_error.c | 561 - .../runtime/liboffload_error_codes.h | 337 - liboffloadmic/runtime/liboffload_msg.c | 66 - liboffloadmic/runtime/liboffload_msg.h | 416 - liboffloadmic/runtime/mic_lib.f90 | 282 - liboffloadmic/runtime/offload.h | 565 - liboffloadmic/runtime/offload_common.cpp | 190 - liboffloadmic/runtime/offload_common.h | 553 - liboffloadmic/runtime/offload_engine.cpp | 1128 - liboffloadmic/runtime/offload_engine.h | 724 - liboffloadmic/runtime/offload_env.cpp | 384 - liboffloadmic/runtime/offload_env.h | 112 - liboffloadmic/runtime/offload_host.cpp | 7255 ------- liboffloadmic/runtime/offload_host.h | 541 - liboffloadmic/runtime/offload_iterator.h | 103 - liboffloadmic/runtime/offload_omp_host.cpp | 1267 -- liboffloadmic/runtime/offload_omp_target.cpp | 736 - liboffloadmic/runtime/offload_orsl.cpp | 104 - liboffloadmic/runtime/offload_orsl.h | 47 - liboffloadmic/runtime/offload_table.cpp | 671 - liboffloadmic/runtime/offload_table.h | 468 - liboffloadmic/runtime/offload_target.cpp | 878 - liboffloadmic/runtime/offload_target.h | 129 - liboffloadmic/runtime/offload_target_main.cpp | 37 - liboffloadmic/runtime/offload_timer.h | 192 - liboffloadmic/runtime/offload_timer_host.cpp | 379 - .../runtime/offload_timer_target.cpp | 87 - liboffloadmic/runtime/offload_trace.cpp | 409 - liboffloadmic/runtime/offload_trace.h | 86 - liboffloadmic/runtime/offload_util.cpp | 226 - liboffloadmic/runtime/offload_util.h | 182 - liboffloadmic/runtime/ofldbegin.cpp | 337 - liboffloadmic/runtime/ofldend.cpp | 114 - .../runtime/orsl-lite/include/orsl-lite.h | 241 - .../runtime/orsl-lite/lib/orsl-lite.c | 357 - liboffloadmic/runtime/orsl-lite/version.txt | 1 - 114 files changed, 9 insertions(+), 75952 deletions(-) delete mode 100644 gcc/config/i386/intelmic-mkoffload.cc delete mode 100644 gcc/config/i386/intelmic-offload.h delete mode 100644 gcc/config/i386/t-intelmic delete mode 100644 gcc/config/i386/t-omp-device delete mode 100644 liboffloadmic/ChangeLog delete mode 100644 liboffloadmic/Makefile.am delete mode 100644 liboffloadmic/Makefile.in delete mode 100644 liboffloadmic/aclocal.m4 delete mode 100755 liboffloadmic/configure delete mode 100644 liboffloadmic/configure.ac delete mode 100644 liboffloadmic/configure.tgt delete mode 100644 liboffloadmic/doc/doxygen/config delete mode 100644 liboffloadmic/doc/doxygen/header.tex delete mode 100644 liboffloadmic/include/coi/common/COIEngine_common.h delete mode 100644 liboffloadmic/include/coi/common/COIEvent_common.h delete mode 100644 liboffloadmic/include/coi/common/COIMacros_common.h delete mode 100644 liboffloadmic/include/coi/common/COIPerf_common.h delete mode 100644 liboffloadmic/include/coi/common/COIResult_common.h delete mode 100644 liboffloadmic/include/coi/common/COISysInfo_common.h delete mode 100644 liboffloadmic/include/coi/common/COITypes_common.h delete mode 100644 liboffloadmic/include/coi/sink/COIBuffer_sink.h delete mode 100644 liboffloadmic/include/coi/sink/COIPipeline_sink.h delete mode 100644 liboffloadmic/include/coi/sink/COIProcess_sink.h delete mode 100644 liboffloadmic/include/coi/source/COIBuffer_source.h delete mode 100644 liboffloadmic/include/coi/source/COIEngine_source.h delete mode 100644 liboffloadmic/include/coi/source/COIEvent_source.h delete mode 100644 liboffloadmic/include/coi/source/COIPipeline_source.h delete mode 100644 liboffloadmic/include/coi/source/COIProcess_source.h delete mode 100644 liboffloadmic/liboffloadmic_host.spec.in delete mode 100644 liboffloadmic/liboffloadmic_target.spec.in delete mode 100644 liboffloadmic/plugin/Makefile.am delete mode 100644 liboffloadmic/plugin/Makefile.in delete mode 100644 liboffloadmic/plugin/aclocal.m4 delete mode 100755 liboffloadmic/plugin/configure delete mode 100644 liboffloadmic/plugin/configure.ac delete mode 100644 liboffloadmic/plugin/libgomp-plugin-intelmic.cpp delete mode 100644 liboffloadmic/plugin/offload_target_main.cpp delete mode 100644 liboffloadmic/runtime/cean_util.cpp delete mode 100644 liboffloadmic/runtime/cean_util.h delete mode 100644 liboffloadmic/runtime/coi/coi_client.cpp delete mode 100644 liboffloadmic/runtime/coi/coi_client.h delete mode 100644 liboffloadmic/runtime/coi/coi_server.cpp delete mode 100644 liboffloadmic/runtime/coi/coi_server.h delete mode 100644 liboffloadmic/runtime/compiler_if_host.cpp delete mode 100644 liboffloadmic/runtime/compiler_if_host.h delete mode 100644 liboffloadmic/runtime/compiler_if_target.cpp delete mode 100644 liboffloadmic/runtime/compiler_if_target.h delete mode 100644 liboffloadmic/runtime/dv_util.cpp delete mode 100644 liboffloadmic/runtime/dv_util.h delete mode 100644 liboffloadmic/runtime/emulator/coi_common.h delete mode 100644 liboffloadmic/runtime/emulator/coi_device.cpp delete mode 100644 liboffloadmic/runtime/emulator/coi_device.h delete mode 100644 liboffloadmic/runtime/emulator/coi_host.cpp delete mode 100644 liboffloadmic/runtime/emulator/coi_host.h delete mode 100644 liboffloadmic/runtime/emulator/coi_version_asm.h delete mode 100644 liboffloadmic/runtime/emulator/coi_version_linker_script.map delete mode 100644 liboffloadmic/runtime/liboffload_error.c delete mode 100644 liboffloadmic/runtime/liboffload_error_codes.h delete mode 100644 liboffloadmic/runtime/liboffload_msg.c delete mode 100644 liboffloadmic/runtime/liboffload_msg.h delete mode 100644 liboffloadmic/runtime/mic_lib.f90 delete mode 100644 liboffloadmic/runtime/offload.h delete mode 100644 liboffloadmic/runtime/offload_common.cpp delete mode 100644 liboffloadmic/runtime/offload_common.h delete mode 100644 liboffloadmic/runtime/offload_engine.cpp delete mode 100644 liboffloadmic/runtime/offload_engine.h delete mode 100644 liboffloadmic/runtime/offload_env.cpp delete mode 100644 liboffloadmic/runtime/offload_env.h delete mode 100644 liboffloadmic/runtime/offload_host.cpp delete mode 100644 liboffloadmic/runtime/offload_host.h delete mode 100644 liboffloadmic/runtime/offload_iterator.h delete mode 100644 liboffloadmic/runtime/offload_omp_host.cpp delete mode 100644 liboffloadmic/runtime/offload_omp_target.cpp delete mode 100644 liboffloadmic/runtime/offload_orsl.cpp delete mode 100644 liboffloadmic/runtime/offload_orsl.h delete mode 100644 liboffloadmic/runtime/offload_table.cpp delete mode 100644 liboffloadmic/runtime/offload_table.h delete mode 100644 liboffloadmic/runtime/offload_target.cpp delete mode 100644 liboffloadmic/runtime/offload_target.h delete mode 100644 liboffloadmic/runtime/offload_target_main.cpp delete mode 100644 liboffloadmic/runtime/offload_timer.h delete mode 100644 liboffloadmic/runtime/offload_timer_host.cpp delete mode 100644 liboffloadmic/runtime/offload_timer_target.cpp delete mode 100644 liboffloadmic/runtime/offload_trace.cpp delete mode 100644 liboffloadmic/runtime/offload_trace.h delete mode 100644 liboffloadmic/runtime/offload_util.cpp delete mode 100644 liboffloadmic/runtime/offload_util.h delete mode 100644 liboffloadmic/runtime/ofldbegin.cpp delete mode 100644 liboffloadmic/runtime/ofldend.cpp delete mode 100644 liboffloadmic/runtime/orsl-lite/include/orsl-lite.h delete mode 100644 liboffloadmic/runtime/orsl-lite/lib/orsl-lite.c delete mode 100644 liboffloadmic/runtime/orsl-lite/version.txt diff --git a/Makefile.def b/Makefile.def index 3291b126b26..02e63c57177 100644 --- a/Makefile.def +++ b/Makefile.def @@ -158,9 +158,6 @@ target_modules = { module= libvtv; bootstrap=true; lib_path=.libs; raw_cxx=true; }; -target_modules = { module= liboffloadmic; - lib_path=.libs; - extra_configure_flags='@extra_liboffloadmic_configure_flags@'; }; target_modules = { module= libssp; lib_path=.libs; }; target_modules = { module= newlib; }; target_modules = { module= libgcc; bootstrap=true; no_check=true; @@ -603,7 +600,6 @@ dependencies = { module=all-m4; on=all-build-texinfo; }; // on libgcc and newlib/libgloss. lang_env_dependencies = { module=libitm; cxx=true; }; lang_env_dependencies = { module=libffi; cxx=true; }; -lang_env_dependencies = { module=liboffloadmic; cxx=true; }; lang_env_dependencies = { module=newlib; no_c=true; }; lang_env_dependencies = { module=libgloss; no_c=true; }; lang_env_dependencies = { module=libgcc; no_gcc=true; no_c=true; }; @@ -625,14 +621,12 @@ dependencies = { module=all-target-libphobos; on=all-target-libbacktrace; }; dependencies = { module=all-target-libphobos; on=all-target-zlib; }; dependencies = { module=all-target-libphobos; on=all-target-libatomic; }; dependencies = { module=configure-target-libstdc++-v3; on=configure-target-libgomp; }; -dependencies = { module=configure-target-liboffloadmic; on=configure-target-libgomp; }; dependencies = { module=configure-target-libsanitizer; on=all-target-libstdc++-v3; }; dependencies = { module=configure-target-libvtv; on=all-target-libstdc++-v3; }; // parallel_list.o and parallel_settings.o depend on omp.h, which is // generated by the libgomp configure. Unfortunately, due to the use of // recursive make, we can't be that specific. dependencies = { module=all-target-libstdc++-v3; on=configure-target-libgomp; }; -dependencies = { module=all-target-liboffloadmic; on=all-target-libgomp; }; dependencies = { module=install-target-libgo; on=install-target-libatomic; }; dependencies = { module=install-target-libgfortran; on=install-target-libquadmath; }; @@ -642,8 +636,6 @@ dependencies = { module=install-target-libsanitizer; on=install-target-libstdc++ dependencies = { module=install-target-libsanitizer; on=install-target-libgcc; }; dependencies = { module=install-target-libvtv; on=install-target-libstdc++-v3; }; dependencies = { module=install-target-libvtv; on=install-target-libgcc; }; -dependencies = { module=install-target-liboffloadmic; on=install-target-libstdc++-v3; }; -dependencies = { module=install-target-liboffloadmic; on=install-target-libgcc; }; dependencies = { module=install-target-libitm; on=install-target-libgcc; }; dependencies = { module=install-target-libobjc; on=install-target-libgcc; }; dependencies = { module=install-target-libstdc++-v3; on=install-target-libgcc; }; diff --git a/Makefile.in b/Makefile.in index 1919dfee829..6ffa9660c25 100644 --- a/Makefile.in +++ b/Makefile.in [snipped] diff --git a/configure b/configure index 01b014a3e65..05d694ba3fe 100755 --- a/configure +++ b/configure [snipped] diff --git a/configure.ac b/configure.ac index 2cff32e300e..8e1eaa04938 100644 --- a/configure.ac +++ b/configure.ac @@ -150,7 +150,6 @@ target_libraries="target-libgcc \ target-libgloss \ target-newlib \ target-libgomp \ - target-liboffloadmic \ target-libatomic \ target-libitm \ target-libstdc++-v3 \ @@ -473,42 +472,6 @@ ENABLE_LIBSTDCXX=default) noconfigdirs="$noconfigdirs target-libstdc++-v3" fi] -# If this is accelerator compiler and its target is intelmic we enable -# target liboffloadmic by default. If this is compiler with offloading -# for intelmic we enable host liboffloadmic by default. Otherwise -# liboffloadmic is disabled by default. -AC_ARG_ENABLE([liboffloadmic], -AC_HELP_STRING([[--enable-liboffloadmic[=ARG]]], - [build liboffloadmic @<:@ARG={no,host,target}@:>@]), -[case "$enableval" in - no | host | target) - enable_liboffloadmic=$enableval ;; - *) - AC_MSG_ERROR([--enable-liboffloadmic=no/host/target]) ;; -esac], -[if test x"$enable_as_accelerator_for" != x; then - case "${target}" in - *-intelmic-* | *-intelmicemul-*) - enable_liboffloadmic=target - extra_liboffloadmic_configure_flags="--enable-liboffloadmic=target" - ;; - *) - enable_liboffloadmic=no - ;; - esac -else - case "${enable_offload_targets}" in - *-intelmic-* | *-intelmicemul-*) - enable_liboffloadmic=host - extra_liboffloadmic_configure_flags="--enable-liboffloadmic=host" - ;; - *) - enable_liboffloadmic=no - ;; - esac -fi]) -AC_SUBST(extra_liboffloadmic_configure_flags) - # Enable libgomp by default on hosted POSIX systems, and a few others. if test x$enable_libgomp = x ; then case "${target}" in @@ -544,22 +507,6 @@ if test -d ${srcdir}/libatomic; then fi fi -# Disable liboffloadmic on unsupported systems. -if test -d ${srcdir}/liboffloadmic; then - if test x$enable_liboffloadmic != xno; then - AC_MSG_CHECKING([for liboffloadmic support]) - if (srcdir=${srcdir}/liboffloadmic; \ - . ${srcdir}/configure.tgt; \ - test -n "$UNSUPPORTED") - then - AC_MSG_RESULT([no]) - noconfigdirs="$noconfigdirs target-liboffloadmic" - else - AC_MSG_RESULT([yes]) - fi - fi -fi - # Disable libitm on unsupported systems. if test -d ${srcdir}/libitm; then if test x$enable_libitm = x; then @@ -2328,7 +2275,7 @@ case ,${enable_languages},:${enable_objc_gc} in *,objc,*:yes|*,objc,*:auto) fi esac -# Disable libitm, libsanitizer, libvtv, liboffloadmic if we're not building C++ +# Disable libitm, libsanitizer, libvtv if we're not building C++ case ,${enable_languages}, in *,c++,*) # Disable libitm, libsanitizer if we're not building libstdc++ @@ -2340,7 +2287,7 @@ case ,${enable_languages}, in esac ;; *) - noconfigdirs="$noconfigdirs target-liboffloadmic target-libitm target-libsanitizer target-libvtv" + noconfigdirs="$noconfigdirs target-libitm target-libsanitizer target-libvtv" ;; esac diff --git a/contrib/gcc-changelog/git_commit.py b/contrib/gcc-changelog/git_commit.py index 7f6ff87ba99..1f6e1920829 100755 --- a/contrib/gcc-changelog/git_commit.py +++ b/contrib/gcc-changelog/git_commit.py @@ -67,7 +67,6 @@ default_changelog_locations = { 'libiberty', 'libitm', 'libobjc', - 'liboffloadmic', 'libphobos', 'libquadmath', 'libsanitizer', diff --git a/contrib/gcc_update b/contrib/gcc_update index 18c7ec46264..c5630df6c4c 100755 --- a/contrib/gcc_update +++ b/contrib/gcc_update @@ -162,12 +162,6 @@ libsanitizer/sanitizer_common/Makefile.in: libsanitizer/sanitizer_common/Makefil libvtv/aclocal.m4: libvtv/configure.ac libvtv/acinclude.m4 libvtv/Makefile.in: libvtv/Makefile.am libvtv/aclocal.m4 libvtv/configure: libvtv/configure.ac libvtv/aclocal.m4 -liboffloadmic/aclocal.m4: liboffloadmic/configure.ac -liboffloadmic/Makefile.in: liboffloadmic/Makefile.am -liboffloadmic/configure: liboffloadmic/configure.ac -liboffloadmic/plugin/aclocal.m4: liboffloadmic/plugin/configure.ac -liboffloadmic/plugin/Makefile.in: liboffloadmic/plugin/Makefile.am -liboffloadmic/plugin/configure: liboffloadmic/plugin/configure.ac libbacktrace/aclocal.m4: libbacktrace/configure.ac libbacktrace/Makefile.in: libbacktrace/Makefile.am libbacktrace/aclocal.m4 libbacktrace/configure: libbacktrace/configure.ac libbacktrace/aclocal.m4 diff --git a/contrib/update-copyright.py b/contrib/update-copyright.py index 2ec2a60f5d0..76614ffc4ea 100755 --- a/contrib/update-copyright.py +++ b/contrib/update-copyright.py @@ -760,7 +760,6 @@ class GCCCmdLine (CmdLine): self.add_dir ('libiberty') self.add_dir ('libitm') self.add_dir ('libobjc') - # liboffloadmic is imported from upstream. self.add_dir ('libphobos', LibPhobosFilter()) self.add_dir ('libquadmath') # libsanitizer is imported from upstream. diff --git a/gcc/config.gcc b/gcc/config.gcc index 2fbf2e6fa69..bdd00955869 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -3531,14 +3531,6 @@ case ${target} in ;; esac -# Build mkoffload tool -case ${target} in -*-intelmic-* | *-intelmicemul-*) - tmake_file="${tmake_file} i386/t-intelmic" - tm_file="${tm_file} i386/intelmic-offload.h" - ;; -esac - if [ "$target_has_targetcm" = "no" ]; then c_target_objs="$c_target_objs default-c.o" cxx_target_objs="$cxx_target_objs default-c.o" diff --git a/gcc/config/i386/i386-options.cc b/gcc/config/i386/i386-options.cc index acb2291e70f..dd1078d4526 100644 --- a/gcc/config/i386/i386-options.cc +++ b/gcc/config/i386/i386-options.cc @@ -307,10 +307,6 @@ ix86_omp_device_kind_arch_isa (enum omp_device_kind_arch_isa trait, case omp_device_kind: return strcmp (name, "cpu") == 0; case omp_device_arch: -#ifdef ACCEL_COMPILER - if (strcmp (name, "intel_mic") == 0) - return 1; -#endif if (strcmp (name, "x86") == 0) return 1; if (TARGET_64BIT) diff --git a/gcc/config/i386/intelmic-mkoffload.cc b/gcc/config/i386/intelmic-mkoffload.cc deleted file mode 100644 index 5deddff6ca2..00000000000 diff --git a/gcc/config/i386/intelmic-offload.h b/gcc/config/i386/intelmic-offload.h deleted file mode 100644 index 42ce0d8d57a..00000000000 diff --git a/gcc/config/i386/t-intelmic b/gcc/config/i386/t-intelmic deleted file mode 100644 index 95d7e532315..00000000000 diff --git a/gcc/config/i386/t-omp-device b/gcc/config/i386/t-omp-device deleted file mode 100644 index cfb41ed71ce..00000000000 diff --git a/gcc/configure b/gcc/configure index 535e5d9453d..6846a1e4951 100755 --- a/gcc/configure +++ b/gcc/configure [snipped] diff --git a/gcc/configure.ac b/gcc/configure.ac index 45bf7560e6f..8dc90ff6e1f 100644 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -1133,12 +1133,6 @@ if test x"$enable_as_accelerator_for" != x; then AC_DEFINE(ACCEL_COMPILER, 1, [Define if this compiler should be built as the offload target compiler.]) enable_as_accelerator=yes - case "${target}" in - *-intelmicemul-*) - # In this case we expect offload compiler to be built as native, so we - # need to rename the driver to avoid clashes with host's drivers. - program_transform_name="s&^&${target}-&" ;; - esac sedscript="s#${target_noncanonical}#${enable_as_accelerator_for}-accel-${target_noncanonical}#" program_transform_name=`echo $program_transform_name | sed $sedscript` accel_dir_suffix=/accel/${target_noncanonical} @@ -1153,10 +1147,6 @@ for tgt in `echo $enable_offload_targets | sed 's/,/ /g'`; do enable_offloading=1 case "$tgt" in - *-intelmic-* | *-intelmicemul-*) - omp_device_property=omp-device-properties-i386 - omp_device_property_tmake_file="${omp_device_property_tmake_file} \$(srcdir)/config/i386/t-omp-device" - ;; amdgcn*) omp_device_property=omp-device-properties-gcn omp_device_property_tmake_file="${omp_device_property_tmake_file} \$(srcdir)/config/gcn/t-omp-device" diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi index 4931e0b4fc5..a6b802390ec 100644 --- a/gcc/doc/install.texi +++ b/gcc/doc/install.texi @@ -2318,7 +2318,7 @@ specifying paths @var{path1}, @dots{}, @var{pathN}. @smallexample % @var{srcdir}/configure \ - --enable-offload-targets=x86_64-intelmicemul-linux-gnu=/path/to/x86_64/compiler,nvptx-none + --enable-offload-targets=amdgcn-amdhsa,nvptx-none @end smallexample @item --enable-offload-defaulted diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi index c81e2ffd43a..ce312622969 100644 --- a/gcc/doc/sourcebuild.texi +++ b/gcc/doc/sourcebuild.texi @@ -116,9 +116,6 @@ The runtime support library for transactional memory. @item libobjc The Objective-C and Objective-C++ runtime library. -@item liboffloadmic -A library to allow OpenMP to Intel MIC targets. - @item libphobos The D standard and runtime library. The bulk of this library is mirrored from the @uref{https://github.com/@/dlang, master D repositories}. diff --git a/include/gomp-constants.h b/include/gomp-constants.h index 84316f953d0..85a9446ccc3 100644 --- a/include/gomp-constants.h +++ b/include/gomp-constants.h @@ -229,7 +229,7 @@ enum gomp_map_kind /* #define GOMP_DEVICE_HOST_NONSHM 3 removed. */ #define GOMP_DEVICE_NOT_HOST 4 #define GOMP_DEVICE_NVIDIA_PTX 5 -#define GOMP_DEVICE_INTEL_MIC 6 +/* #define GOMP_DEVICE_INTEL_MIC 6 removed. */ #define GOMP_DEVICE_HSA 7 #define GOMP_DEVICE_GCN 8 @@ -284,7 +284,6 @@ enum gomp_map_kind to the plugin interface defined in libgomp/libgomp.h. */ #define GOMP_VERSION 2 #define GOMP_VERSION_NVIDIA_PTX 1 -#define GOMP_VERSION_INTEL_MIC 0 #define GOMP_VERSION_GCN 2 #define GOMP_VERSION_PACK(LIB, DEV) (((LIB) << 16) | (DEV)) diff --git a/libgomp/configure b/libgomp/configure index 35424d2e21f..45a769eb10a 100755 --- a/libgomp/configure +++ b/libgomp/configure [snipped] diff --git a/libgomp/libgomp-plugin.h b/libgomp/libgomp-plugin.h index 6ab5ac6365f..c6dab2eb9f1 100644 --- a/libgomp/libgomp-plugin.h +++ b/libgomp/libgomp-plugin.h @@ -49,7 +49,6 @@ enum offload_target_type OFFLOAD_TARGET_TYPE_HOST = 2, /* OFFLOAD_TARGET_TYPE_HOST_NONSHM = 3 removed. */ OFFLOAD_TARGET_TYPE_NVIDIA_PTX = 5, - OFFLOAD_TARGET_TYPE_INTEL_MIC = 6, OFFLOAD_TARGET_TYPE_HSA = 7, OFFLOAD_TARGET_TYPE_GCN = 8 }; diff --git a/libgomp/libgomp.texi b/libgomp/libgomp.texi index 8d3b9cfb64d..978ed2e3a1d 100644 --- a/libgomp/libgomp.texi +++ b/libgomp/libgomp.texi @@ -4303,10 +4303,6 @@ offloading devices (it's not clear if they should be): @multitable @columnfractions .60 .10 .25 @headitem @code{arch} @tab @code{kind} @tab @code{isa} -@item @code{intel_mic}, @code{x86}, @code{x86_64}, @code{i386}, @code{i486}, - @code{i586}, @code{i686}, @code{ia32} - @tab @code{host} - @tab See @code{-m...} flags in ``x86 Options'' (without @code{-m}) @item @code{amdgcn}, @code{gcn} @tab @code{gpu} @tab See @code{-march=} in ``AMD GCN Options'' diff --git a/libgomp/plugin/configfrag.ac b/libgomp/plugin/configfrag.ac index ab03f94adac..d3b258901ef 100644 --- a/libgomp/plugin/configfrag.ac +++ b/libgomp/plugin/configfrag.ac @@ -59,9 +59,6 @@ if test x"$enable_offload_targets" != x; then tgt=`echo $tgt | sed 's/=.*//'` tgt_plugin= case $tgt in - *-intelmic-* | *-intelmicemul-*) - tgt_plugin=intelmic - ;; nvptx*) case "${target}" in aarch64*-*-* | powerpc64le-*-* | x86_64-*-*) diff --git a/libgomp/testsuite/lib/libgomp.exp b/libgomp/testsuite/lib/libgomp.exp index 107a3c2ac9d..21b192bfdd7 100644 --- a/libgomp/testsuite/lib/libgomp.exp +++ b/libgomp/testsuite/lib/libgomp.exp @@ -119,18 +119,6 @@ proc libgomp_init { args } { # Compute what needs to be put into LD_LIBRARY_PATH set always_ld_library_path ".:${blddir}/.libs" - # Add liboffloadmic build directory in LD_LIBRARY_PATH to support - # Intel MIC offloading testing. - global offload_plugins - if { [string match "*,intelmic,*" ",$offload_plugins,"] } { - append always_ld_library_path ":${blddir}/../liboffloadmic/.libs" - append always_ld_library_path ":${blddir}/../liboffloadmic/plugin/.libs" - # libstdc++ is required by liboffloadmic - append always_ld_library_path ":${blddir}/../libstdc++-v3/src/.libs" - # libgcc_s is required by libstdc++ - append always_ld_library_path ":${blddir}/../libgcc" - } - global offload_additional_lib_paths if { $offload_additional_lib_paths != "" } { append always_ld_library_path "${offload_additional_lib_paths}" @@ -313,9 +301,6 @@ proc offload_target_to_openacc_device_type { offload_target } { disable { return "host" } - *-intelmic* { - return "" - } nvptx* { return "nvidia" } @@ -437,28 +422,6 @@ proc check_effective_target_openacc_nvidia_accel_selected { } { return [string match "nvidia" $openacc_device_type] } -# Return 1 if using Intel MIC offload device. -proc check_effective_target_offload_device_intel_mic { } { - return [check_runtime_nocache offload_device_intel_mic { - #include "testsuite/libgomp.c-c++-common/on_device_arch.h" - int main () - { - return !on_device_arch_intel_mic (); - } - } ] -} - -# Return 1 if any Intel MIC offload device is available. -proc check_effective_target_offload_device_any_intel_mic { } { - return [check_runtime_nocache offload_device_any_intel_mic { - #include "testsuite/libgomp.c-c++-common/on_device_arch.h" - int main () - { - return !any_device_arch_intel_mic (); - } - } ] -} - # Return 1 if the OpenACC 'host' device type is selected. proc check_effective_target_openacc_host_selected { } { diff --git a/libgomp/testsuite/libgomp.c-c++-common/on_device_arch.h b/libgomp/testsuite/libgomp.c-c++-common/on_device_arch.h index f92743b04d7..01c7109fe35 100644 --- a/libgomp/testsuite/libgomp.c-c++-common/on_device_arch.h +++ b/libgomp/testsuite/libgomp.c-c++-common/on_device_arch.h @@ -7,14 +7,7 @@ device_arch_nvptx (void) return GOMP_DEVICE_NVIDIA_PTX; } -/* static */ int -device_arch_intel_mic (void) -{ - return GOMP_DEVICE_INTEL_MIC; -} - #pragma omp declare variant (device_arch_nvptx) match(construct={target},device={arch(nvptx)}) -#pragma omp declare variant (device_arch_intel_mic) match(construct={target},device={arch(intel_mic)}) /* static */ int device_arch (void) { @@ -36,31 +29,3 @@ on_device_arch_nvptx () { return on_device_arch (GOMP_DEVICE_NVIDIA_PTX); } - -int -on_device_arch_intel_mic () -{ - return on_device_arch (GOMP_DEVICE_INTEL_MIC); -} - -static int -any_device_arch (int d) -{ - int nd = omp_get_num_devices (); - for (int i = 0; i < nd; ++i) - { - int d_cur; - #pragma omp target device(i) map(from:d_cur) - d_cur = device_arch (); - if (d_cur == d) - return 1; - } - - return 0; -} - -int -any_device_arch_intel_mic () -{ - return any_device_arch (GOMP_DEVICE_INTEL_MIC); -} diff --git a/libgomp/testsuite/libgomp.c-c++-common/target-45.c b/libgomp/testsuite/libgomp.c-c++-common/target-45.c index 27bbeddf7fd..73c105d5874 100644 --- a/libgomp/testsuite/libgomp.c-c++-common/target-45.c +++ b/libgomp/testsuite/libgomp.c-c++-common/target-45.c @@ -1,5 +1,3 @@ -/* { dg-xfail-run-if TODO { offload_device_any_intel_mic } } */ - #include <omp.h> #include <stdlib.h> diff --git a/libgomp/testsuite/libgomp.fortran/target10.f90 b/libgomp/testsuite/libgomp.fortran/target10.f90 index 31452554d67..4876ccea330 100644 --- a/libgomp/testsuite/libgomp.fortran/target10.f90 +++ b/libgomp/testsuite/libgomp.fortran/target10.f90 @@ -1,5 +1,4 @@ ! { dg-do run } -! { dg-xfail-run-if TODO { offload_device_any_intel_mic } } program main use omp_lib diff --git a/liboffloadmic/ChangeLog b/liboffloadmic/ChangeLog deleted file mode 100644 index 90e7c4d1191..00000000000 diff --git a/liboffloadmic/Makefile.am b/liboffloadmic/Makefile.am deleted file mode 100644 index 4a15322b1c9..00000000000 diff --git a/liboffloadmic/Makefile.in b/liboffloadmic/Makefile.in deleted file mode 100644 index 43abc5a40e8..00000000000 diff --git a/liboffloadmic/aclocal.m4 b/liboffloadmic/aclocal.m4 deleted file mode 100644 index 31a2695c10e..00000000000 diff --git a/liboffloadmic/configure b/liboffloadmic/configure deleted file mode 100755 index b3cfff76f71..00000000000 diff --git a/liboffloadmic/configure.ac b/liboffloadmic/configure.ac deleted file mode 100644 index f64f182e8ef..00000000000 diff --git a/liboffloadmic/configure.tgt b/liboffloadmic/configure.tgt deleted file mode 100644 index 3c0310cb477..00000000000 diff --git a/liboffloadmic/doc/doxygen/config b/liboffloadmic/doc/doxygen/config deleted file mode 100644 index 3ef1019b5ce..00000000000 diff --git a/liboffloadmic/doc/doxygen/header.tex b/liboffloadmic/doc/doxygen/header.tex deleted file mode 100644 index e91d4be29d6..00000000000 diff --git a/liboffloadmic/include/coi/common/COIEngine_common.h b/liboffloadmic/include/coi/common/COIEngine_common.h deleted file mode 100644 index 836e3e830d4..00000000000 diff --git a/liboffloadmic/include/coi/common/COIEvent_common.h b/liboffloadmic/include/coi/common/COIEvent_common.h deleted file mode 100644 index 9d5623d6edd..00000000000 diff --git a/liboffloadmic/include/coi/common/COIMacros_common.h b/liboffloadmic/include/coi/common/COIMacros_common.h deleted file mode 100644 index d6811c1cd21..00000000000 diff --git a/liboffloadmic/include/coi/common/COIPerf_common.h b/liboffloadmic/include/coi/common/COIPerf_common.h deleted file mode 100644 index 0b17e13d670..00000000000 diff --git a/liboffloadmic/include/coi/common/COIResult_common.h b/liboffloadmic/include/coi/common/COIResult_common.h deleted file mode 100644 index d40c0b0d3ea..00000000000 diff --git a/liboffloadmic/include/coi/common/COISysInfo_common.h b/liboffloadmic/include/coi/common/COISysInfo_common.h deleted file mode 100644 index cc37647b0c0..00000000000 diff --git a/liboffloadmic/include/coi/common/COITypes_common.h b/liboffloadmic/include/coi/common/COITypes_common.h deleted file mode 100644 index 6018b7d0ede..00000000000 diff --git a/liboffloadmic/include/coi/sink/COIBuffer_sink.h b/liboffloadmic/include/coi/sink/COIBuffer_sink.h deleted file mode 100644 index d36d5860b3e..00000000000 diff --git a/liboffloadmic/include/coi/sink/COIPipeline_sink.h b/liboffloadmic/include/coi/sink/COIPipeline_sink.h deleted file mode 100644 index 9cb1087ab6f..00000000000 diff --git a/liboffloadmic/include/coi/sink/COIProcess_sink.h b/liboffloadmic/include/coi/sink/COIProcess_sink.h deleted file mode 100644 index 9438925391e..00000000000 diff --git a/liboffloadmic/include/coi/source/COIBuffer_source.h b/liboffloadmic/include/coi/source/COIBuffer_source.h deleted file mode 100644 index b90d50554bf..00000000000 diff --git a/liboffloadmic/include/coi/source/COIEngine_source.h b/liboffloadmic/include/coi/source/COIEngine_source.h deleted file mode 100644 index d4f6c1bd11f..00000000000 diff --git a/liboffloadmic/include/coi/source/COIEvent_source.h b/liboffloadmic/include/coi/source/COIEvent_source.h deleted file mode 100644 index 8c6ad25c76f..00000000000 diff --git a/liboffloadmic/include/coi/source/COIPipeline_source.h b/liboffloadmic/include/coi/source/COIPipeline_source.h deleted file mode 100644 index c13404d7f6a..00000000000 diff --git a/liboffloadmic/include/coi/source/COIProcess_source.h b/liboffloadmic/include/coi/source/COIProcess_source.h deleted file mode 100644 index 1248a915fc3..00000000000 diff --git a/liboffloadmic/liboffloadmic_host.spec.in b/liboffloadmic/liboffloadmic_host.spec.in deleted file mode 100644 index 3fd12e4d7d6..00000000000 diff --git a/liboffloadmic/liboffloadmic_target.spec.in b/liboffloadmic/liboffloadmic_target.spec.in deleted file mode 100644 index d679686684a..00000000000 diff --git a/liboffloadmic/plugin/Makefile.am b/liboffloadmic/plugin/Makefile.am deleted file mode 100644 index 7caea7894ac..00000000000 diff --git a/liboffloadmic/plugin/Makefile.in b/liboffloadmic/plugin/Makefile.in deleted file mode 100644 index 8d5ad0025c2..00000000000 diff --git a/liboffloadmic/plugin/aclocal.m4 b/liboffloadmic/plugin/aclocal.m4 deleted file mode 100644 index 9fa1d1216c1..00000000000 diff --git a/liboffloadmic/plugin/configure b/liboffloadmic/plugin/configure deleted file mode 100755 index de58b93d2f7..00000000000 diff --git a/liboffloadmic/plugin/configure.ac b/liboffloadmic/plugin/configure.ac deleted file mode 100644 index cbcd0130d05..00000000000 diff --git a/liboffloadmic/plugin/libgomp-plugin-intelmic.cpp b/liboffloadmic/plugin/libgomp-plugin-intelmic.cpp deleted file mode 100644 index 7be27f0459d..00000000000 diff --git a/liboffloadmic/plugin/offload_target_main.cpp b/liboffloadmic/plugin/offload_target_main.cpp deleted file mode 100644 index ccf7240e286..00000000000 diff --git a/liboffloadmic/runtime/cean_util.cpp b/liboffloadmic/runtime/cean_util.cpp deleted file mode 100644 index f2c3e48a99c..00000000000 diff --git a/liboffloadmic/runtime/cean_util.h b/liboffloadmic/runtime/cean_util.h deleted file mode 100644 index 1ba8793b653..00000000000 diff --git a/liboffloadmic/runtime/coi/coi_client.cpp b/liboffloadmic/runtime/coi/coi_client.cpp deleted file mode 100644 index 179a3029e9c..00000000000 diff --git a/liboffloadmic/runtime/coi/coi_client.h b/liboffloadmic/runtime/coi/coi_client.h deleted file mode 100644 index b5b0efc4947..00000000000 diff --git a/liboffloadmic/runtime/coi/coi_server.cpp b/liboffloadmic/runtime/coi/coi_server.cpp deleted file mode 100644 index 67aa991eebb..00000000000 diff --git a/liboffloadmic/runtime/coi/coi_server.h b/liboffloadmic/runtime/coi/coi_server.h deleted file mode 100644 index 1afaa3bd810..00000000000 diff --git a/liboffloadmic/runtime/compiler_if_host.cpp b/liboffloadmic/runtime/compiler_if_host.cpp deleted file mode 100644 index 4d8feb46715..00000000000 diff --git a/liboffloadmic/runtime/compiler_if_host.h b/liboffloadmic/runtime/compiler_if_host.h deleted file mode 100644 index 025f6fb2dba..00000000000 diff --git a/liboffloadmic/runtime/compiler_if_target.cpp b/liboffloadmic/runtime/compiler_if_target.cpp deleted file mode 100644 index a44bd886147..00000000000 diff --git a/liboffloadmic/runtime/compiler_if_target.h b/liboffloadmic/runtime/compiler_if_target.h deleted file mode 100644 index ebb9b73d0aa..00000000000 diff --git a/liboffloadmic/runtime/dv_util.cpp b/liboffloadmic/runtime/dv_util.cpp deleted file mode 100644 index f79cf1f8699..00000000000 diff --git a/liboffloadmic/runtime/dv_util.h b/liboffloadmic/runtime/dv_util.h deleted file mode 100644 index 370ff01637d..00000000000 diff --git a/liboffloadmic/runtime/emulator/coi_common.h b/liboffloadmic/runtime/emulator/coi_common.h deleted file mode 100644 index 085a92d83ea..00000000000 diff --git a/liboffloadmic/runtime/emulator/coi_device.cpp b/liboffloadmic/runtime/emulator/coi_device.cpp deleted file mode 100644 index c11214723e0..00000000000 diff --git a/liboffloadmic/runtime/emulator/coi_device.h b/liboffloadmic/runtime/emulator/coi_device.h deleted file mode 100644 index a3778baa6a2..00000000000 diff --git a/liboffloadmic/runtime/emulator/coi_host.cpp b/liboffloadmic/runtime/emulator/coi_host.cpp deleted file mode 100644 index 6170d8d7f3d..00000000000 diff --git a/liboffloadmic/runtime/emulator/coi_host.h b/liboffloadmic/runtime/emulator/coi_host.h deleted file mode 100644 index 82dbc92aef8..00000000000 diff --git a/liboffloadmic/runtime/emulator/coi_version_asm.h b/liboffloadmic/runtime/emulator/coi_version_asm.h deleted file mode 100644 index e64ba7dcc06..00000000000 diff --git a/liboffloadmic/runtime/emulator/coi_version_linker_script.map b/liboffloadmic/runtime/emulator/coi_version_linker_script.map deleted file mode 100644 index ea180669858..00000000000 diff --git a/liboffloadmic/runtime/liboffload_error.c b/liboffloadmic/runtime/liboffload_error.c deleted file mode 100644 index 5dffdb11512..00000000000 diff --git a/liboffloadmic/runtime/liboffload_error_codes.h b/liboffloadmic/runtime/liboffload_error_codes.h deleted file mode 100644 index d7a71c3e6d4..00000000000 diff --git a/liboffloadmic/runtime/liboffload_msg.c b/liboffloadmic/runtime/liboffload_msg.c deleted file mode 100644 index ffee72f5ae8..00000000000 diff --git a/liboffloadmic/runtime/liboffload_msg.h b/liboffloadmic/runtime/liboffload_msg.h deleted file mode 100644 index 93eccd496fd..00000000000 diff --git a/liboffloadmic/runtime/mic_lib.f90 b/liboffloadmic/runtime/mic_lib.f90 deleted file mode 100644 index 1874dd97796..00000000000 diff --git a/liboffloadmic/runtime/offload.h b/liboffloadmic/runtime/offload.h deleted file mode 100644 index 4a329ba0e56..00000000000 diff --git a/liboffloadmic/runtime/offload_common.cpp b/liboffloadmic/runtime/offload_common.cpp deleted file mode 100644 index af569ae3376..00000000000 diff --git a/liboffloadmic/runtime/offload_common.h b/liboffloadmic/runtime/offload_common.h deleted file mode 100644 index 445d47cfad0..00000000000 diff --git a/liboffloadmic/runtime/offload_engine.cpp b/liboffloadmic/runtime/offload_engine.cpp deleted file mode 100644 index b2de56c68eb..00000000000 diff --git a/liboffloadmic/runtime/offload_engine.h b/liboffloadmic/runtime/offload_engine.h deleted file mode 100644 index b4cdad503be..00000000000 diff --git a/liboffloadmic/runtime/offload_env.cpp b/liboffloadmic/runtime/offload_env.cpp deleted file mode 100644 index d1f52f14342..00000000000 diff --git a/liboffloadmic/runtime/offload_env.h b/liboffloadmic/runtime/offload_env.h deleted file mode 100644 index 166b5d9242d..00000000000 diff --git a/liboffloadmic/runtime/offload_host.cpp b/liboffloadmic/runtime/offload_host.cpp deleted file mode 100644 index cab08c43550..00000000000 diff --git a/liboffloadmic/runtime/offload_host.h b/liboffloadmic/runtime/offload_host.h deleted file mode 100644 index 4f1ef1392ba..00000000000 diff --git a/liboffloadmic/runtime/offload_iterator.h b/liboffloadmic/runtime/offload_iterator.h deleted file mode 100644 index baf25afbb2f..00000000000 diff --git a/liboffloadmic/runtime/offload_omp_host.cpp b/liboffloadmic/runtime/offload_omp_host.cpp deleted file mode 100644 index 0439fec313b..00000000000 diff --git a/liboffloadmic/runtime/offload_omp_target.cpp b/liboffloadmic/runtime/offload_omp_target.cpp deleted file mode 100644 index 2bcfef5acea..00000000000 diff --git a/liboffloadmic/runtime/offload_orsl.cpp b/liboffloadmic/runtime/offload_orsl.cpp deleted file mode 100644 index a2ab6743ab5..00000000000 diff --git a/liboffloadmic/runtime/offload_orsl.h b/liboffloadmic/runtime/offload_orsl.h deleted file mode 100644 index 4513fcc4749..00000000000 diff --git a/liboffloadmic/runtime/offload_table.cpp b/liboffloadmic/runtime/offload_table.cpp deleted file mode 100644 index 09c4d206e58..00000000000 diff --git a/liboffloadmic/runtime/offload_table.h b/liboffloadmic/runtime/offload_table.h deleted file mode 100644 index 9f9f93261cb..00000000000 diff --git a/liboffloadmic/runtime/offload_target.cpp b/liboffloadmic/runtime/offload_target.cpp deleted file mode 100644 index 16ba4a32991..00000000000 diff --git a/liboffloadmic/runtime/offload_target.h b/liboffloadmic/runtime/offload_target.h deleted file mode 100644 index 8d2971b2418..00000000000 diff --git a/liboffloadmic/runtime/offload_target_main.cpp b/liboffloadmic/runtime/offload_target_main.cpp deleted file mode 100644 index 68f7c3054d5..00000000000 diff --git a/liboffloadmic/runtime/offload_timer.h b/liboffloadmic/runtime/offload_timer.h deleted file mode 100644 index 30a1149b6fb..00000000000 diff --git a/liboffloadmic/runtime/offload_timer_host.cpp b/liboffloadmic/runtime/offload_timer_host.cpp deleted file mode 100644 index 3d93508f5d8..00000000000 diff --git a/liboffloadmic/runtime/offload_timer_target.cpp b/liboffloadmic/runtime/offload_timer_target.cpp deleted file mode 100644 index 860f2976580..00000000000 diff --git a/liboffloadmic/runtime/offload_trace.cpp b/liboffloadmic/runtime/offload_trace.cpp deleted file mode 100644 index 8d69c286f57..00000000000 diff --git a/liboffloadmic/runtime/offload_trace.h b/liboffloadmic/runtime/offload_trace.h deleted file mode 100644 index e48aa01f340..00000000000 diff --git a/liboffloadmic/runtime/offload_util.cpp b/liboffloadmic/runtime/offload_util.cpp deleted file mode 100644 index bb434871f60..00000000000 diff --git a/liboffloadmic/runtime/offload_util.h b/liboffloadmic/runtime/offload_util.h deleted file mode 100644 index 789846239bf..00000000000 diff --git a/liboffloadmic/runtime/ofldbegin.cpp b/liboffloadmic/runtime/ofldbegin.cpp deleted file mode 100644 index 49d40509c97..00000000000 diff --git a/liboffloadmic/runtime/ofldend.cpp b/liboffloadmic/runtime/ofldend.cpp deleted file mode 100644 index 3cabc1a0003..00000000000 diff --git a/liboffloadmic/runtime/orsl-lite/include/orsl-lite.h b/liboffloadmic/runtime/orsl-lite/include/orsl-lite.h deleted file mode 100644 index 867bae5f33c..00000000000 diff --git a/liboffloadmic/runtime/orsl-lite/lib/orsl-lite.c b/liboffloadmic/runtime/orsl-lite/lib/orsl-lite.c deleted file mode 100644 index 669c40a1358..00000000000 diff --git a/liboffloadmic/runtime/orsl-lite/version.txt b/liboffloadmic/runtime/orsl-lite/version.txt deleted file mode 100644 index ab5f59930fc..00000000000 -- 2.35.1 ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) 2022-10-20 11:15 ` Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) Thomas Schwinge @ 2022-10-20 11:34 ` Jakub Jelinek 2022-11-04 10:05 ` GCC 13: OpenMP offloading to Intel MIC has been removed (was: Remove support for Intel MIC offloading) Thomas Schwinge 2022-10-20 12:33 ` Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) Michael Matz 2022-10-20 20:56 ` Remove support for Intel MIC offloading Thomas Schwinge 2 siblings, 1 reply; 25+ messages in thread From: Jakub Jelinek @ 2022-10-20 11:34 UTC (permalink / raw) To: Thomas Schwinge Cc: H.J. Lu, Hongtao Liu, gcc-patches, Martin Liška, Tobias Burnus, Michael Matz, Richard Biener On Thu, Oct 20, 2022 at 01:15:43PM +0200, Thomas Schwinge wrote: > I'm proposing the attached "Remove support for Intel MIC offloading" > (generated with 'git format-patch --irreversible-delete', and 'diff's for > regenerated files manually snipped, to reduce its size). ChangeLog missing, you'll need one for a successful commit. Otherwise LGTM. But we'll need to update the offloading wiki too. Jakub ^ permalink raw reply [flat|nested] 25+ messages in thread
* GCC 13: OpenMP offloading to Intel MIC has been removed (was: Remove support for Intel MIC offloading) 2022-10-20 11:34 ` Jakub Jelinek @ 2022-11-04 10:05 ` Thomas Schwinge 2022-11-04 10:36 ` Jakub Jelinek 0 siblings, 1 reply; 25+ messages in thread From: Thomas Schwinge @ 2022-11-04 10:05 UTC (permalink / raw) To: H.J. Lu, Hongtao Liu, gcc, gcc-patches, Jakub Jelinek Cc: Richard Biener, Michael Matz, Tobias Burnus [-- Attachment #1: Type: text/plain, Size: 1174 bytes --] Hi! On 2022-10-20T13:34:41+0200, Jakub Jelinek via Gcc-patches <gcc-patches@gcc.gnu.org> wrote: > we'll need to update the offloading wiki I'll look into that. I assume we just remove any "Intel MIC" text, unless historically or otherwise still relevant, of course. Likewise I'll look through open PRs to see if any can be closed now. And, I've pushed to wwwdocs master branch commit c59054dae1319cd21e8198733a63d60111681d1b "GCC 13: OpenMP offloading to Intel MIC has been removed", see attached, borrowing both the position in the notes and wording from the GCC 12 deprecation. Now, looking forward to the day when someone introduces support for (new) Intel GPU offloading! (See initial/inconclusive discussion in thread at <https://inbox.sourceware.org/gcc/87v933nlhn.fsf@dem-tschwing-1.ger.mentorg.com/> "GCC/OpenMP offloading for Intel GPUs?". Grüße Thomas ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955 [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: 0001-GCC-13-OpenMP-offloading-to-Intel-MIC-has-been-remov.patch --] [-- Type: text/x-diff, Size: 942 bytes --] From c59054dae1319cd21e8198733a63d60111681d1b Mon Sep 17 00:00:00 2001 From: Thomas Schwinge <thomas@codesourcery.com> Date: Fri, 4 Nov 2022 10:18:38 +0100 Subject: [PATCH] GCC 13: OpenMP offloading to Intel MIC has been removed --- htdocs/gcc-13/changes.html | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/gcc-13/changes.html b/htdocs/gcc-13/changes.html index f5fa97e5..8b4bf7f3 100644 --- a/htdocs/gcc-13/changes.html +++ b/htdocs/gcc-13/changes.html @@ -28,6 +28,7 @@ a work-in-progress.</p> <!-- .................................................................. --> <h2>Caveats</h2> <ul> + <li>OpenMP offloading to Intel MIC has been removed.</li> <li>The support for the <code>cr16-elf</code>, <code>tilegx*-linux</code>, <code>tilepro*-linux</code>, <code>hppa[12]*-*-hpux10*</code>, <code>hppa[12]*-*-hpux11*</code> and <code>m32c-rtems</code> configurations has been removed.</li> -- 2.35.1 ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: GCC 13: OpenMP offloading to Intel MIC has been removed (was: Remove support for Intel MIC offloading) 2022-11-04 10:05 ` GCC 13: OpenMP offloading to Intel MIC has been removed (was: Remove support for Intel MIC offloading) Thomas Schwinge @ 2022-11-04 10:36 ` Jakub Jelinek 0 siblings, 0 replies; 25+ messages in thread From: Jakub Jelinek @ 2022-11-04 10:36 UTC (permalink / raw) To: Thomas Schwinge Cc: H.J. Lu, Hongtao Liu, gcc, gcc-patches, Richard Biener, Michael Matz, Tobias Burnus On Fri, Nov 04, 2022 at 11:05:13AM +0100, Thomas Schwinge wrote: > Hi! > > On 2022-10-20T13:34:41+0200, Jakub Jelinek via Gcc-patches <gcc-patches@gcc.gnu.org> wrote: > > we'll need to update the offloading wiki > > I'll look into that. I assume we just remove any "Intel MIC" text, > unless historically or otherwise still relevant, of course. Well, e.g. at the start GCC 5 and later support two offloading configurations: OpenMP to Intel MIC targets (upcoming Intel Xeon Phi products codenamed KNL) as well as MIC emulation on host. should be kept, and in the GCC 13 entry say that the support has been removed. Or perhaps better split the GCC 5 entry to say that GCC 5 and later support OpenACC to NVidia PTX and another entry that GCC 5 to GCC 12 support OpenMP to Intel MIC. As there is just one wiki for all the GCC versions, I think we should keep the MIC stuff in there for now but add notes to the various spots that it isn't there for GCC 13 anymore (repeat the info). And when GCC 12.5 is released and branch 12 closes we can drop it except from the first part of the wiki. Jakub ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) 2022-10-20 11:15 ` Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) Thomas Schwinge 2022-10-20 11:34 ` Jakub Jelinek @ 2022-10-20 12:33 ` Michael Matz 2022-10-20 12:40 ` Jakub Jelinek 2022-10-20 20:56 ` Remove support for Intel MIC offloading Thomas Schwinge 2 siblings, 1 reply; 25+ messages in thread From: Michael Matz @ 2022-10-20 12:33 UTC (permalink / raw) To: Thomas Schwinge Cc: H.J. Lu, Hongtao Liu, gcc-patches, Martin Liška, Jakub Jelinek, Tobias Burnus, Richard Biener Hey, On Thu, 20 Oct 2022, Thomas Schwinge wrote: > This had been done in > wwwdocs commit 5c7ecfb5627e412a3d142d8dc212f4cd39b3b73f > "Document deprecation of OpenMP MIC offloading in GCC 12". > > I'm sad about this, because -- in theory -- such a plugin is very useful > for offloading simulation/debugging (separate host/device memory spaces, > allow sanitizers to run on offloaded code Yeah, I think that's a _very_ useful feature, but indeed ... > (like LLVM a while ago > implemented), and so on), but all that doesn't help -- in practice -- if > nobody is maintaining that code. ... it should then be somewhat maintained properly. Maybe the MIC-specifics could be removed from the code, and it could be transformed into a "null"-offload target, as example and testing vehicle (and implying that such new liboffloadmic^H^H^Hnull would have its upstream in the GCC repo). Alas, if noone is going to do that work removing is the right choice. Ciao, Michael. ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) 2022-10-20 12:33 ` Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) Michael Matz @ 2022-10-20 12:40 ` Jakub Jelinek 2022-10-20 13:09 ` Richard Biener 0 siblings, 1 reply; 25+ messages in thread From: Jakub Jelinek @ 2022-10-20 12:40 UTC (permalink / raw) To: Michael Matz Cc: Thomas Schwinge, H.J. Lu, Hongtao Liu, gcc-patches, Martin Liška, Tobias Burnus, Richard Biener On Thu, Oct 20, 2022 at 12:33:28PM +0000, Michael Matz wrote: > Hey, > > On Thu, 20 Oct 2022, Thomas Schwinge wrote: > > > This had been done in > > wwwdocs commit 5c7ecfb5627e412a3d142d8dc212f4cd39b3b73f > > "Document deprecation of OpenMP MIC offloading in GCC 12". > > > > I'm sad about this, because -- in theory -- such a plugin is very useful > > for offloading simulation/debugging (separate host/device memory spaces, > > allow sanitizers to run on offloaded code > > Yeah, I think that's a _very_ useful feature, but indeed ... > > > (like LLVM a while ago > > implemented), and so on), but all that doesn't help -- in practice -- if > > nobody is maintaining that code. > > ... it should then be somewhat maintained properly. Maybe the > MIC-specifics could be removed from the code, and it could be transformed > into a "null"-offload target, as example and testing vehicle (and implying > that such new liboffloadmic^H^H^Hnull would have its upstream in the GCC > repo). Alas, if noone is going to do that work removing is the right > choice. Yeah. But we really shouldn't need a large MIC specific library for that, everything should be implementable with a simple portable plugin that just forks + execs the offloading ELF and transfers data to/out of it etc. And the config/i386/intelmic-mkoffload etc. stuff would need to be done somewhere in generic code, such that we can do it for all targets. Also ideally by using just the normal lto1 with some special option that it acts as an offloading compiler, so that we don't need to bother with building a separate offloading compiler for it. True, everything guarded with #ifdef ACCEL_COMPILER etc. would need to change into code guarded with some option. Jakub ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) 2022-10-20 12:40 ` Jakub Jelinek @ 2022-10-20 13:09 ` Richard Biener 2023-02-01 15:12 ` Martin Jambor 0 siblings, 1 reply; 25+ messages in thread From: Richard Biener @ 2022-10-20 13:09 UTC (permalink / raw) To: Jakub Jelinek Cc: Michael Matz, gcc-patches, Tobias Burnus, Hongtao Liu, Thomas Schwinge > Am 20.10.2022 um 14:41 schrieb Jakub Jelinek via Gcc-patches <gcc-patches@gcc.gnu.org>: > > On Thu, Oct 20, 2022 at 12:33:28PM +0000, Michael Matz wrote: >> Hey, >> >>> On Thu, 20 Oct 2022, Thomas Schwinge wrote: >>> >>> This had been done in >>> wwwdocs commit 5c7ecfb5627e412a3d142d8dc212f4cd39b3b73f >>> "Document deprecation of OpenMP MIC offloading in GCC 12". >>> >>> I'm sad about this, because -- in theory -- such a plugin is very useful >>> for offloading simulation/debugging (separate host/device memory spaces, >>> allow sanitizers to run on offloaded code >> >> Yeah, I think that's a _very_ useful feature, but indeed ... >> >>> (like LLVM a while ago >>> implemented), and so on), but all that doesn't help -- in practice -- if >>> nobody is maintaining that code. >> >> ... it should then be somewhat maintained properly. Maybe the >> MIC-specifics could be removed from the code, and it could be transformed >> into a "null"-offload target, as example and testing vehicle (and implying >> that such new liboffloadmic^H^H^Hnull would have its upstream in the GCC >> repo). Alas, if noone is going to do that work removing is the right >> choice. > > Yeah. But we really shouldn't need a large MIC specific library for that, > everything should be implementable with a simple portable plugin that just > forks + execs the offloading ELF and transfers data to/out of it etc. > And the config/i386/intelmic-mkoffload etc. stuff would need to be done > somewhere in generic code, such that we can do it for all targets. > Also ideally by using just the normal lto1 with some special option that > it acts as an offloading compiler, so that we don't need to bother with > building a separate offloading compiler for it. > True, everything guarded with #ifdef ACCEL_COMPILER etc. would need to > change into code guarded with some option. Might be a nice GSoC project … Richard > Jakub > ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) 2022-10-20 13:09 ` Richard Biener @ 2023-02-01 15:12 ` Martin Jambor 2023-02-02 21:13 ` GSoC project idea: Separate Host Process Offloading (was: Remove support for Intel MIC offloading) Thomas Schwinge 0 siblings, 1 reply; 25+ messages in thread From: Martin Jambor @ 2023-02-01 15:12 UTC (permalink / raw) To: Richard Biener, Jakub Jelinek Cc: Tobias Burnus, Hongtao Liu, Michael Matz, gcc-patches, Thomas Schwinge Hello, On Thu, Oct 20 2022, Richard Biener via Gcc-patches wrote: >> Am 20.10.2022 um 14:41 schrieb Jakub Jelinek via Gcc-patches <gcc-patches@gcc.gnu.org>: >> >> On Thu, Oct 20, 2022 at 12:33:28PM +0000, Michael Matz wrote: >>> Hey, >>> >>>> On Thu, 20 Oct 2022, Thomas Schwinge wrote: >>>> >>>> This had been done in >>>> wwwdocs commit 5c7ecfb5627e412a3d142d8dc212f4cd39b3b73f >>>> "Document deprecation of OpenMP MIC offloading in GCC 12". >>>> >>>> I'm sad about this, because -- in theory -- such a plugin is very useful >>>> for offloading simulation/debugging (separate host/device memory spaces, >>>> allow sanitizers to run on offloaded code >>> >>> Yeah, I think that's a _very_ useful feature, but indeed ... >>> >>>> (like LLVM a while ago >>>> implemented), and so on), but all that doesn't help -- in practice -- if >>>> nobody is maintaining that code. >>> >>> ... it should then be somewhat maintained properly. Maybe the >>> MIC-specifics could be removed from the code, and it could be transformed >>> into a "null"-offload target, as example and testing vehicle (and implying >>> that such new liboffloadmic^H^H^Hnull would have its upstream in the GCC >>> repo). Alas, if noone is going to do that work removing is the right >>> choice. >> >> Yeah. But we really shouldn't need a large MIC specific library for that, >> everything should be implementable with a simple portable plugin that just >> forks + execs the offloading ELF and transfers data to/out of it etc. >> And the config/i386/intelmic-mkoffload etc. stuff would need to be done >> somewhere in generic code, such that we can do it for all targets. >> Also ideally by using just the normal lto1 with some special option that >> it acts as an offloading compiler, so that we don't need to bother with >> building a separate offloading compiler for it. >> True, everything guarded with #ifdef ACCEL_COMPILER etc. would need to >> change into code guarded with some option. > > Might be a nice GSoC project … > I really think it could be. Would any one of those involved in this thread be willing to mentor it? Thanks, Martin ^ permalink raw reply [flat|nested] 25+ messages in thread
* GSoC project idea: Separate Host Process Offloading (was: Remove support for Intel MIC offloading) 2023-02-01 15:12 ` Martin Jambor @ 2023-02-02 21:13 ` Thomas Schwinge 2023-02-07 23:26 ` GSoC project idea: Separate Host Process Offloading Thomas Schwinge 0 siblings, 1 reply; 25+ messages in thread From: Thomas Schwinge @ 2023-02-02 21:13 UTC (permalink / raw) To: Martin Jambor, Richard Biener, Jakub Jelinek Cc: tschwinge, Tobias Burnus, Hongtao Liu, Michael Matz, gcc-patches Hi! On 2023-02-01T16:12:07+0100, Martin Jambor <mjambor@suse.cz> wrote: > On Thu, Oct 20 2022, Richard Biener via Gcc-patches wrote: >>> Am 20.10.2022 um 14:41 schrieb Jakub Jelinek via Gcc-patches <gcc-patches@gcc.gnu.org>: >>> On Thu, Oct 20, 2022 at 12:33:28PM +0000, Michael Matz wrote: >>>>> On Thu, 20 Oct 2022, Thomas Schwinge wrote: >>>>> This had been done in >>>>> wwwdocs commit 5c7ecfb5627e412a3d142d8dc212f4cd39b3b73f >>>>> "Document deprecation of OpenMP MIC offloading in GCC 12". >>>>> >>>>> I'm sad about this, because -- in theory -- such a plugin is very useful >>>>> for offloading simulation/debugging (separate host/device memory spaces, >>>>> allow sanitizers to run on offloaded code >>>> >>>> Yeah, I think that's a _very_ useful feature, but indeed ... >>>> >>>>> (like LLVM a while ago >>>>> implemented), and so on), but all that doesn't help -- in practice -- if >>>>> nobody is maintaining that code. >>>> >>>> ... it should then be somewhat maintained properly. Maybe the >>>> MIC-specifics could be removed from the code, and it could be transformed >>>> into a "null"-offload target, as example and testing vehicle (and implying >>>> that such new liboffloadmic^H^H^Hnull would have its upstream in the GCC >>>> repo). Alas, if noone is going to do that work removing is the right >>>> choice. >>> >>> Yeah. But we really shouldn't need a large MIC specific library for that, >>> everything should be implementable with a simple portable plugin that just >>> forks + execs the offloading ELF and transfers data to/out of it etc. >>> And the config/i386/intelmic-mkoffload etc. stuff would need to be done >>> somewhere in generic code, such that we can do it for all targets. >>> Also ideally by using just the normal lto1 with some special option that >>> it acts as an offloading compiler, so that we don't need to bother with >>> building a separate offloading compiler for it. >>> True, everything guarded with #ifdef ACCEL_COMPILER etc. would need to >>> change into code guarded with some option. >> >> Might be a nice GSoC project … > > I really think it could be. Agreed! Something like: "Separate Host Process Offloading"! (Back in October, I actually had made a TODO note to put this one onto <https://gcc.gnu.org/wiki/SummerOfCode>, but so far...) > Would any one of those involved in this > thread be willing to mentor it? I'd offer to co-mentor, but I'd rather not be the only one. I'm now off for FOSDEM, but unless someone gets it done before, I'll cook up a GSoC project idea text when I'm back, on Tuesday. Grüße Thomas ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955 ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: GSoC project idea: Separate Host Process Offloading 2023-02-02 21:13 ` GSoC project idea: Separate Host Process Offloading (was: Remove support for Intel MIC offloading) Thomas Schwinge @ 2023-02-07 23:26 ` Thomas Schwinge 2023-02-08 7:47 ` Tobias Burnus 0 siblings, 1 reply; 25+ messages in thread From: Thomas Schwinge @ 2023-02-07 23:26 UTC (permalink / raw) To: Martin Jambor, Richard Biener, Jakub Jelinek Cc: Tobias Burnus, Hongtao Liu, Michael Matz, gcc-patches Hi! On 2023-02-02T22:13:20+0100, I wrote: > On 2023-02-01T16:12:07+0100, Martin Jambor <mjambor@suse.cz> wrote: >> On Thu, Oct 20 2022, Richard Biener via Gcc-patches wrote: >>>> Am 20.10.2022 um 14:41 schrieb Jakub Jelinek via Gcc-patches <gcc-patches@gcc.gnu.org>: >>>> On Thu, Oct 20, 2022 at 12:33:28PM +0000, Michael Matz wrote: >>>>>> On Thu, 20 Oct 2022, Thomas Schwinge wrote: >>>>>> This had been done in >>>>>> wwwdocs commit 5c7ecfb5627e412a3d142d8dc212f4cd39b3b73f >>>>>> "Document deprecation of OpenMP MIC offloading in GCC 12". >>>>>> >>>>>> I'm sad about this, because -- in theory -- such a plugin is very useful >>>>>> for offloading simulation/debugging (separate host/device memory spaces, >>>>>> allow sanitizers to run on offloaded code >>>>> >>>>> Yeah, I think that's a _very_ useful feature, but indeed ... >>>>> >>>>>> (like LLVM a while ago >>>>>> implemented), and so on), but all that doesn't help -- in practice -- if >>>>>> nobody is maintaining that code. >>>>> >>>>> ... it should then be somewhat maintained properly. Maybe the >>>>> MIC-specifics could be removed from the code, and it could be transformed >>>>> into a "null"-offload target, as example and testing vehicle (and implying >>>>> that such new liboffloadmic^H^H^Hnull would have its upstream in the GCC >>>>> repo). Alas, if noone is going to do that work removing is the right >>>>> choice. >>>> >>>> Yeah. But we really shouldn't need a large MIC specific library for that, >>>> everything should be implementable with a simple portable plugin that just >>>> forks + execs the offloading ELF and transfers data to/out of it etc. >>>> And the config/i386/intelmic-mkoffload etc. stuff would need to be done >>>> somewhere in generic code, such that we can do it for all targets. >>>> Also ideally by using just the normal lto1 with some special option that >>>> it acts as an offloading compiler, so that we don't need to bother with >>>> building a separate offloading compiler for it. >>>> True, everything guarded with #ifdef ACCEL_COMPILER etc. would need to >>>> change into code guarded with some option. >>> >>> Might be a nice GSoC project … >> >> I really think it could be. > > Agreed! Something like: "Separate Host Process Offloading"! (Back > in October, I actually had made a TODO note to put this one onto > <https://gcc.gnu.org/wiki/SummerOfCode>, but so far...) > >> Would any one of those involved in this >> thread be willing to mentor it? > > I'd offer to co-mentor, but I'd rather not be the only one. Still looking for someone to join, please! :-) > I'm now off for FOSDEM, but unless someone gets it done before, I'll cook > up a GSoC project idea text when I'm back, on Tuesday. Here it is: <https://gcc.gnu.org/wiki/SummerOfCode#Separate_Host_Process_Offloading>. Please have a look, and fix up if necessary. Grüße Thomas ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955 ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: GSoC project idea: Separate Host Process Offloading 2023-02-07 23:26 ` GSoC project idea: Separate Host Process Offloading Thomas Schwinge @ 2023-02-08 7:47 ` Tobias Burnus 0 siblings, 0 replies; 25+ messages in thread From: Tobias Burnus @ 2023-02-08 7:47 UTC (permalink / raw) To: Thomas Schwinge, Martin Jambor, Richard Biener, Jakub Jelinek Cc: Hongtao Liu, Michael Matz, gcc-patches Hi Thomas, hi all, On 08.02.23 00:26, Thomas Schwinge wrote: > On 2023-02-02T22:13:20+0100, I wrote: >> I'd offer to co-mentor, but I'd rather not be the only one. > Still looking for someone to join, please! :-) As kind of mentioned before, I am willing to co-mentor :-) > Here it is: > https://gcc.gnu.org/wiki/SummerOfCode#Separate_Host_Process_Offloading > Please have a look, and fix up if necessary. Thanks. (Disclaimer: I still have to read it.) I think this could be also the basis for remote OpenMP offload handling via the to-be-created target-specific plugin. In this case, to do offloading to the remote CPU. Writing such an RPC wrapper would be an independent task, which then should also handle the offloading to a remote GPU. — Citing an LLVM paper about such a feature: "The basic idea behind the Remote OpenMP Offloading implementation is to provide a transparent communication channel between the target-independent library on the host with the target-dependent library on the remote system. This use case matches the well-known remote procedure calls (RPC) idiom. To facilitate communication, we added two new components into LLVM/OpenMP that build a tunnel from the host to the remote system through which all plugin API calls ( in Fig. 3) are forwarded. The first is a remote offloading plugin () which presents itself to the host as any other plugin would, i.e., it looks no different than the NVIDIA GPU offloading plugin. The second is a server application that must be running on the remote system () that mimics when it communicates with the remote device plugin, such as the one for NVIDIA GPU offloading. The bottom row of Fig. 3 illustrates their interaction with the existing infrastructure." (From https://link.springer.com/chapter/10.1007/978-3-031-07312-0_16 (requires subscription)) About this topic, see also https://www.hpcwire.com/off-the-wire/remote-openmp-offloading-paper-recognized-at-isc/ and https://baodishan.com/assets/pdf/iwomp22.pdf (both freely accessible, the latter has a lot of details). Tobias ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955 ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: Remove support for Intel MIC offloading 2022-10-20 11:15 ` Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) Thomas Schwinge 2022-10-20 11:34 ` Jakub Jelinek 2022-10-20 12:33 ` Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) Michael Matz @ 2022-10-20 20:56 ` Thomas Schwinge 2022-11-04 9:54 ` Thomas Schwinge 2 siblings, 1 reply; 25+ messages in thread From: Thomas Schwinge @ 2022-10-20 20:56 UTC (permalink / raw) To: Jakub Jelinek, Tobias Burnus; +Cc: gcc-patches Hi Jakub, Tobias! On 2022-10-20T13:15:43+0200, I wrote: > I'm proposing the attached "Remove support for Intel MIC offloading" Can you please confirm: > --- a/gcc/config/i386/i386-options.cc > +++ b/gcc/config/i386/i386-options.cc > @@ -307,10 +307,6 @@ ix86_omp_device_kind_arch_isa (enum omp_device_kind_arch_isa trait, > case omp_device_kind: > return strcmp (name, "cpu") == 0; > case omp_device_arch: > -#ifdef ACCEL_COMPILER > - if (strcmp (name, "intel_mic") == 0) > - return 1; > -#endif > if (strcmp (name, "x86") == 0) > return 1; > if (TARGET_64BIT) Only remove this bit as quoted, or actually remove the whole function (used for 'gcc/config/i386/i386.cc:TARGET_OMP_DEVICE_KIND_ARCH_ISA')? But if I do the latter, I get a few FAILs in compiler-side '[...]/gomp/declare-variant-[...]' test cases, and 'libgomp.c/declare-variant-1.c'. You, Jakub, had originally added that in Subversion r277662 (Git commit 9ba66bf5b9c69e0e2bcd1b2ab88160bf9b2aa417) "targetm.omp.device_kind_arch_isa and OpenMP declare variant kind/arch/isa handling". Reading these emails, and the discussion in <https://gcc.gnu.org/PR105640> "[OpenMP] Context selectors missing for PowerPC", I infer that we generally would like to keep this stuff, for non-offloading OpenMP use, and thus indeed just remove the Intel MIC parts (as quoted above). Thus: > --- a/libgomp/libgomp.texi > +++ b/libgomp/libgomp.texi > @@ -4303,10 +4303,6 @@ offloading devices (it's not clear if they should be): > > @multitable @columnfractions .60 .10 .25 > @headitem @code{arch} @tab @code{kind} @tab @code{isa} > -@item @code{intel_mic}, @code{x86}, @code{x86_64}, @code{i386}, @code{i486}, > - @code{i586}, @code{i686}, @code{ia32} > - @tab @code{host} > - @tab See @code{-m...} flags in ``x86 Options'' (without @code{-m}) > @item @code{amdgcn}, @code{gcn} > @tab @code{gpu} > @tab See @code{-march=} in ``AMD GCN Options'' ..., I should also restore this, and only remove the Intel MIC mention. On the other hand: > diff --git a/gcc/config/i386/t-omp-device b/gcc/config/i386/t-omp-device > deleted file mode 100644 | index cfb41ed71ce..00000000000 | --- gcc/config/i386/t-omp-device | +++ /dev/null | @@ -1,6 +0,0 @@ | -omp-device-properties-i386: $(srcdir)/config/i386/i386-options.cc | - echo kind: cpu > $@ | - echo arch: intel_mic x86 x86_64 i386 i486 i586 i686 ia32 >> $@ | - echo isa: sse4 `sed -n '/^static struct ix86_target_opts isa2\?_opts\[\] =/,/^};/p' \ | - $(srcdir)/config/i386/i386-options.cc | \ | - sed -n 's/",.*$$//;s/^ { "-m//p'` >> $@ Indeed remove this whole file, or just Intel MIC, again? Here, as I understand, this is fine to remove completely, as is only used if there is an actual offload compiler (which now there isn't anymore); unused as of here: > --- a/gcc/configure.ac > +++ b/gcc/configure.ac > @@ -1153,10 +1147,6 @@ for tgt in `echo $enable_offload_targets | sed 's/,/ /g'`; do > > enable_offloading=1 > case "$tgt" in > - *-intelmic-* | *-intelmicemul-*) > - omp_device_property=omp-device-properties-i386 > - omp_device_property_tmake_file="${omp_device_property_tmake_file} \$(srcdir)/config/i386/t-omp-device" > - ;; > amdgcn*) > omp_device_property=omp-device-properties-gcn > omp_device_property_tmake_file="${omp_device_property_tmake_file} \$(srcdir)/config/gcn/t-omp-device" So I assume that is OK the way I had it prepared. Grüße Thomas ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955 ^ permalink raw reply [flat|nested] 25+ messages in thread
* Remove support for Intel MIC offloading 2022-10-20 20:56 ` Remove support for Intel MIC offloading Thomas Schwinge @ 2022-11-04 9:54 ` Thomas Schwinge 2022-11-04 10:30 ` Jakub Jelinek 0 siblings, 1 reply; 25+ messages in thread From: Thomas Schwinge @ 2022-11-04 9:54 UTC (permalink / raw) To: gcc-patches; +Cc: Jakub Jelinek, Tobias Burnus, H.J. Lu, Hongtao Liu [-- Attachment #1: Type: text/plain, Size: 4332 bytes --] Hi! On 2022-10-20T22:56:57+0200, I wrote: > Hi Jakub, Tobias! > > On 2022-10-20T13:15:43+0200, I wrote: >> I'm proposing the attached "Remove support for Intel MIC offloading" > > Can you please confirm: Taking your non-response as silent approval, I've now pushed to master branch commit e4cba49413ca429dc82f6aa2e88129ecb3fdd943 "Remove support for Intel MIC offloading", see attached (generated with 'git format-patch --irreversible-delete', 'xz -9'). Grüße Thomas >> --- a/gcc/config/i386/i386-options.cc >> +++ b/gcc/config/i386/i386-options.cc >> @@ -307,10 +307,6 @@ ix86_omp_device_kind_arch_isa (enum omp_device_kind_arch_isa trait, >> case omp_device_kind: >> return strcmp (name, "cpu") == 0; >> case omp_device_arch: >> -#ifdef ACCEL_COMPILER >> - if (strcmp (name, "intel_mic") == 0) >> - return 1; >> -#endif >> if (strcmp (name, "x86") == 0) >> return 1; >> if (TARGET_64BIT) > > Only remove this bit as quoted, or actually remove the whole function > (used for 'gcc/config/i386/i386.cc:TARGET_OMP_DEVICE_KIND_ARCH_ISA')? > But if I do the latter, I get a few FAILs in compiler-side > '[...]/gomp/declare-variant-[...]' test cases, and > 'libgomp.c/declare-variant-1.c'. > > You, Jakub, had originally added that in > Subversion r277662 (Git commit 9ba66bf5b9c69e0e2bcd1b2ab88160bf9b2aa417) > "targetm.omp.device_kind_arch_isa and OpenMP declare variant kind/arch/isa handling". > Reading these emails, and the discussion in > <https://gcc.gnu.org/PR105640> > "[OpenMP] Context selectors missing for PowerPC", I infer that we > generally would like to keep this stuff, for non-offloading OpenMP use, > and thus indeed just remove the Intel MIC parts (as quoted above). > > Thus: > >> --- a/libgomp/libgomp.texi >> +++ b/libgomp/libgomp.texi >> @@ -4303,10 +4303,6 @@ offloading devices (it's not clear if they should be): >> >> @multitable @columnfractions .60 .10 .25 >> @headitem @code{arch} @tab @code{kind} @tab @code{isa} >> -@item @code{intel_mic}, @code{x86}, @code{x86_64}, @code{i386}, @code{i486}, >> - @code{i586}, @code{i686}, @code{ia32} >> - @tab @code{host} >> - @tab See @code{-m...} flags in ``x86 Options'' (without @code{-m}) >> @item @code{amdgcn}, @code{gcn} >> @tab @code{gpu} >> @tab See @code{-march=} in ``AMD GCN Options'' > > ..., I should also restore this, and only remove the Intel MIC mention. > > On the other hand: > >> diff --git a/gcc/config/i386/t-omp-device b/gcc/config/i386/t-omp-device >> deleted file mode 100644 > | index cfb41ed71ce..00000000000 > | --- gcc/config/i386/t-omp-device > | +++ /dev/null > | @@ -1,6 +0,0 @@ > | -omp-device-properties-i386: $(srcdir)/config/i386/i386-options.cc > | - echo kind: cpu > $@ > | - echo arch: intel_mic x86 x86_64 i386 i486 i586 i686 ia32 >> $@ > | - echo isa: sse4 `sed -n '/^static struct ix86_target_opts isa2\?_opts\[\] =/,/^};/p' \ > | - $(srcdir)/config/i386/i386-options.cc | \ > | - sed -n 's/",.*$$//;s/^ { "-m//p'` >> $@ > > Indeed remove this whole file, or just Intel MIC, again? Here, as I > understand, this is fine to remove completely, as is only used if there > is an actual offload compiler (which now there isn't anymore); unused as > of here: > >> --- a/gcc/configure.ac >> +++ b/gcc/configure.ac > >> @@ -1153,10 +1147,6 @@ for tgt in `echo $enable_offload_targets | sed 's/,/ /g'`; do >> >> enable_offloading=1 >> case "$tgt" in >> - *-intelmic-* | *-intelmicemul-*) >> - omp_device_property=omp-device-properties-i386 >> - omp_device_property_tmake_file="${omp_device_property_tmake_file} \$(srcdir)/config/i386/t-omp-device" >> - ;; >> amdgcn*) >> omp_device_property=omp-device-properties-gcn >> omp_device_property_tmake_file="${omp_device_property_tmake_file} \$(srcdir)/config/gcn/t-omp-device" > > So I assume that is OK the way I had it prepared. > > > Grüße > Thomas ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955 [-- Attachment #2: 0001-Remove-support-for-Intel-MIC-offloading.patch.xz --] [-- Type: application/x-xz, Size: 12352 bytes --] ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: Remove support for Intel MIC offloading 2022-11-04 9:54 ` Thomas Schwinge @ 2022-11-04 10:30 ` Jakub Jelinek 2022-11-04 10:35 ` Thomas Schwinge 0 siblings, 1 reply; 25+ messages in thread From: Jakub Jelinek @ 2022-11-04 10:30 UTC (permalink / raw) To: Thomas Schwinge; +Cc: gcc-patches, Tobias Burnus, H.J. Lu, Hongtao Liu On Fri, Nov 04, 2022 at 10:54:02AM +0100, Thomas Schwinge wrote: > Hi! > > On 2022-10-20T22:56:57+0200, I wrote: > > Hi Jakub, Tobias! > > > > On 2022-10-20T13:15:43+0200, I wrote: > >> I'm proposing the attached "Remove support for Intel MIC offloading" > > > > Can you please confirm: > > Taking your non-response as silent approval, I've now pushed to master I have responded in https://gcc.gnu.org/pipermail/gcc-patches/2022-October/603988.html > branch commit e4cba49413ca429dc82f6aa2e88129ecb3fdd943 > "Remove support for Intel MIC offloading", see attached (generated with > 'git format-patch --irreversible-delete', 'xz -9'). Jakub ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: Remove support for Intel MIC offloading 2022-11-04 10:30 ` Jakub Jelinek @ 2022-11-04 10:35 ` Thomas Schwinge 0 siblings, 0 replies; 25+ messages in thread From: Thomas Schwinge @ 2022-11-04 10:35 UTC (permalink / raw) To: Jakub Jelinek; +Cc: gcc-patches, Tobias Burnus, H.J. Lu, Hongtao Liu Hi Jakub! On 2022-11-04T11:30:04+0100, Jakub Jelinek <jakub@redhat.com> wrote: > On Fri, Nov 04, 2022 at 10:54:02AM +0100, Thomas Schwinge wrote: >> On 2022-10-20T22:56:57+0200, I wrote: >> > Hi Jakub, Tobias! >> > >> > On 2022-10-20T13:15:43+0200, I wrote: >> >> I'm proposing the attached "Remove support for Intel MIC offloading" >> > >> > Can you please confirm: >> >> Taking your non-response as silent approval, I've now pushed to master > > I have responded in > https://gcc.gnu.org/pipermail/gcc-patches/2022-October/603988.html That's correct, but later I sent this other email where I asked "Can you please confirm: [...]", which had not gotten a response. (..., but I convinced myself that my thinking was correct, so I now did proceed understanding "non-response as silent approval".) Grüße Thomas ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955 ^ permalink raw reply [flat|nested] 25+ messages in thread
end of thread, other threads:[~2023-02-08 7:47 UTC | newest] Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-11-08 8:45 [PATCH] Remove dead code Martin Liška 2021-11-08 8:59 ` Jakub Jelinek 2021-11-08 14:19 ` Jeff Law 2021-11-12 14:27 ` Martin Liška 2021-11-12 14:41 ` H.J. Lu 2021-11-12 14:44 ` Martin Liška 2021-11-12 15:00 ` H.J. Lu 2021-11-12 19:14 ` Richard Biener 2021-11-12 19:18 ` H.J. Lu 2021-11-12 19:52 ` Richard Biener 2022-10-20 11:15 ` Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) Thomas Schwinge 2022-10-20 11:34 ` Jakub Jelinek 2022-11-04 10:05 ` GCC 13: OpenMP offloading to Intel MIC has been removed (was: Remove support for Intel MIC offloading) Thomas Schwinge 2022-11-04 10:36 ` Jakub Jelinek 2022-10-20 12:33 ` Remove support for Intel MIC offloading (was: [PATCH] Remove dead code.) Michael Matz 2022-10-20 12:40 ` Jakub Jelinek 2022-10-20 13:09 ` Richard Biener 2023-02-01 15:12 ` Martin Jambor 2023-02-02 21:13 ` GSoC project idea: Separate Host Process Offloading (was: Remove support for Intel MIC offloading) Thomas Schwinge 2023-02-07 23:26 ` GSoC project idea: Separate Host Process Offloading Thomas Schwinge 2023-02-08 7:47 ` Tobias Burnus 2022-10-20 20:56 ` Remove support for Intel MIC offloading Thomas Schwinge 2022-11-04 9:54 ` Thomas Schwinge 2022-11-04 10:30 ` Jakub Jelinek 2022-11-04 10:35 ` Thomas Schwinge
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).