* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC [not found] <20141021171323.GA47586@msticlxl57.ims.intel.com> @ 2014-11-13 14:24 ` Kirill Yukhin 2014-11-13 15:17 ` Tobias Burnus ` (2 more replies) 0 siblings, 3 replies; 18+ messages in thread From: Kirill Yukhin @ 2014-11-13 14:24 UTC (permalink / raw) To: gcc Hello, Support of OpenMP 4.0 offloading to future Xeon Phi was fully checked in to main trunk. Thanks everybody who helped w/ development and review. -- Thanks, K ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 14:24 ` [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC Kirill Yukhin @ 2014-11-13 15:17 ` Tobias Burnus 2014-11-13 15:44 ` Jakub Jelinek ` (2 more replies) 2014-11-13 17:41 ` H.J. Lu 2014-11-13 17:58 ` David Edelsohn 2 siblings, 3 replies; 18+ messages in thread From: Tobias Burnus @ 2014-11-13 15:17 UTC (permalink / raw) To: Kirill Yukhin, gcc Kirill Yukhin wrote: > Support of OpenMP 4.0 offloading to future Xeon Phi was > fully checked in to main trunk. Thanks. If I understood it correctly: * GCC 5 supports code generation for Xeon Phi (Knights Landing, KNL) * KNL (the hardware) is not yet available [mid 2015?] * liboffloadmic supports offloading in an emulation mode (executed on the host) but does not (yet) support offloading to KNL; i.e. one would need an updated version of it, once one gets hold of the actual hardware. * The current hardware (Xeon Phi Knights Corner, KNC) is and will not be supported by GCC. * Details for building GCC for offloading and running code on an accelerator is at https://gcc.gnu.org/wiki/Offloading Question: Is the latter up to date - and the item above correct? BTW: you could update gcc.gnu.org ->news and gcc.gnu.org/gcc-5/changes.html Otherwise: * OpenACC support is about to be merged (as alternative to OpenMP 4) * Support for offloading to NVidia GPUs via PTX is also about to be merged. Tobias ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 15:17 ` Tobias Burnus @ 2014-11-13 15:44 ` Jakub Jelinek 2014-11-13 16:04 ` Kirill Yukhin 2014-11-13 16:19 ` Kirill Yukhin 2 siblings, 0 replies; 18+ messages in thread From: Jakub Jelinek @ 2014-11-13 15:44 UTC (permalink / raw) To: Tobias Burnus, Thomas Schwinge; +Cc: Kirill Yukhin, gcc On Thu, Nov 13, 2014 at 04:15:48PM +0100, Tobias Burnus wrote: > Question: Is the latter up to date - and the item above correct? Will leave that to Kirill. > BTW: you could update gcc.gnu.org ->news and gcc.gnu.org/gcc-5/changes.html Indeed, that should be updated. > Otherwise: > * OpenACC support is about to be merged (as alternative to OpenMP 4) I hope so. > * Support for offloading to NVidia GPUs via PTX is also about to be merged. Ditto. Then the question is how hard will it be to get OpenACC offloading to XeonPhi (real hw or emulation) - I guess it is a matter of whether the plugin needs to implement some extra hooks for OpenACC, and also whether we can get OpenMP offloading to PTX (dunno if Thomas or his collegues have actually tried it on simple testcases, I bet the hardest part will be porting libgomp away from pthread_* to optionally be supported by the limited nvptx target and use its threading model; whether __thread is already supported by nvptx etc.). I'm willing to help with this once I have some hw, but some help from people familiar with PTX would be certainly appreciated. Because without libgomp ported to nvptx-*-* target (or some way to inline all the GOMP_*/omp_* calls in offloading regions for nvptx, but the latter might be too hard), I guess one could offload very simple target regions, but not anything using #pragma omp inside of them. Jakub ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 15:17 ` Tobias Burnus 2014-11-13 15:44 ` Jakub Jelinek @ 2014-11-13 16:04 ` Kirill Yukhin 2014-11-13 16:19 ` Kirill Yukhin 2 siblings, 0 replies; 18+ messages in thread From: Kirill Yukhin @ 2014-11-13 16:04 UTC (permalink / raw) To: Tobias Burnus; +Cc: gcc Hi Tobias, On 13 Nov 16:15, Tobias Burnus wrote: > Kirill Yukhin wrote: > > Support of OpenMP 4.0 offloading to future Xeon Phi was > > fully checked in to main trunk. > > Thanks. If I understood it correctly: > > * GCC 5 supports code generation for Xeon Phi (Knights Landing, KNL) Right. > * KNL (the hardware) is not yet available [mid 2015?] Yes, but I don't know the date. > * liboffloadmic supports offloading in an emulation mode (executed on > the host) but does not (yet) support offloading to KNL; i.e. one > would need an updated version of it, once one gets hold of the > actual hardware. Yes, it supports emulation mode. Also, current scheme is the same as for KNC (however we have no code generator in GCC main trunk for KNC). We're going to keep liboffloadmic up-to-date. > * The current hardware (Xeon Phi Knights Corner, KNC) is and will not > be supported by GCC. Currently GCC main trunk doesn't support KNC code gen. > * Details for building GCC for offloading and running code on an > accelerator is at https://gcc.gnu.org/wiki/Offloading > > Question: Is the latter up to date - and the item above correct? Correct. > BTW: you could update gcc.gnu.org ->news and gcc.gnu.org/gcc-5/changes.html Thanks, I'll post a patch. -- Thanks, K ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 15:17 ` Tobias Burnus 2014-11-13 15:44 ` Jakub Jelinek 2014-11-13 16:04 ` Kirill Yukhin @ 2014-11-13 16:19 ` Kirill Yukhin 2 siblings, 0 replies; 18+ messages in thread From: Kirill Yukhin @ 2014-11-13 16:19 UTC (permalink / raw) To: Tobias Burnus; +Cc: gcc <Reposting to gcc@gcc.gnu.org> Hi Tobias, On 13 Nov 16:15, Tobias Burnus wrote: > Kirill Yukhin wrote: > > Support of OpenMP 4.0 offloading to future Xeon Phi was > > fully checked in to main trunk. > > Thanks. If I understood it correctly: > > * GCC 5 supports code generation for Xeon Phi (Knights Landing, KNL) Right. > * KNL (the hardware) is not yet available [mid 2015?] Yes, but I don't know the date. > * liboffloadmic supports offloading in an emulation mode (executed on > the host) but does not (yet) support offloading to KNL; i.e. one > would need an updated version of it, once one gets hold of the > actual hardware. Yes, it supports emulation mode. Also, current scheme is the same as for KNC (however we have no code generator in GCC main trunk for KNC). We're going to keep liboffloadmic up-to-date. > * The current hardware (Xeon Phi Knights Corner, KNC) is and will not > be supported by GCC. Currently GCC main trunk doesn't support KNC code gen. > * Details for building GCC for offloading and running code on an > accelerator is at https://gcc.gnu.org/wiki/Offloading > > Question: Is the latter up to date - and the item above correct? Correct. > BTW: you could update gcc.gnu.org ->news and gcc.gnu.org/gcc-5/changes.html Thanks, I'll post a patch. -- Thanks, K ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 14:24 ` [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC Kirill Yukhin 2014-11-13 15:17 ` Tobias Burnus @ 2014-11-13 17:41 ` H.J. Lu 2014-11-13 18:48 ` Ilya Verbin 2014-11-13 17:58 ` David Edelsohn 2 siblings, 1 reply; 18+ messages in thread From: H.J. Lu @ 2014-11-13 17:41 UTC (permalink / raw) To: Kirill Yukhin; +Cc: GCC Development On Thu, Nov 13, 2014 at 6:14 AM, Kirill Yukhin <kirill.yukhin@gmail.com> wrote: > Hello, > > Support of OpenMP 4.0 offloading to future Xeon Phi was fully checked in to main > trunk. > > Thanks everybody who helped w/ development and review. > I noticed many libgomp test failures: https://gcc.gnu.org/ml/gcc-regression/2014-11/msg00309.html Have you seen them? -- H.J. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 17:41 ` H.J. Lu @ 2014-11-13 18:48 ` Ilya Verbin 2014-11-13 19:20 ` H.J. Lu 0 siblings, 1 reply; 18+ messages in thread From: Ilya Verbin @ 2014-11-13 18:48 UTC (permalink / raw) To: H.J. Lu; +Cc: Kirill Yukhin, GCC Development On 13 Nov 09:17, H.J. Lu wrote: > I noticed many libgomp test failures: > > https://gcc.gnu.org/ml/gcc-regression/2014-11/msg00309.html > > Have you seen them? Hi H.J., I do not see these regressions on i686-linux and x86_64-linux. Could you please provide more details? (configure options, error log) Thanks, -- Ilya ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 18:48 ` Ilya Verbin @ 2014-11-13 19:20 ` H.J. Lu 2014-11-13 19:29 ` Ilya Verbin 0 siblings, 1 reply; 18+ messages in thread From: H.J. Lu @ 2014-11-13 19:20 UTC (permalink / raw) To: Ilya Verbin; +Cc: Kirill Yukhin, GCC Development On Thu, Nov 13, 2014 at 10:37 AM, Ilya Verbin <iverbin@gmail.com> wrote: > On 13 Nov 09:17, H.J. Lu wrote: >> I noticed many libgomp test failures: >> >> https://gcc.gnu.org/ml/gcc-regression/2014-11/msg00309.html >> >> Have you seen them? > > Hi H.J., > > I do not see these regressions on i686-linux and x86_64-linux. > Could you please provide more details? (configure options, error log) > > Thanks, > -- Ilya GCC is configured with --prefix=/usr/5.0.0 --enable-clocale=gnu --with-system-zlib --enable-shared --with-demangler-in-ld i686-linux --with-fpmath=sse --enable-languages=c,c++,fortran,java,lto,objc I got spawn -ignore SIGHUP /export/project/git/gcc-regression/master/217501/bld/gcc/xgcc -B/export/project/git/gcc-regression/master/217501/bld/gcc/ /export/project/git/gcc-regression/gcc/libgomp/testsuite/libgomp.c/examples-4/e.50.1.c -B/export/project/git/gcc-regression/master/217501/bld/x86_64-unknown-linux-gnu/./libgomp/ -B/export/project/git/gcc-regression/master/217501/bld/x86_64-unknown-linux-gnu/./libgomp/.libs -I/export/project/git/gcc-regression/master/217501/bld/x86_64-unknown-linux-gnu/./libgomp -I/export/project/git/gcc-regression/gcc/libgomp/testsuite/.. -fmessage-length=0 -fno-diagnostics-show-caret -fdiagnostics-color=never -fopenmp -O2 -L/export/project/git/gcc-regression/master/217501/bld/x86_64-unknown-linux-gnu/./libgomp/.libs -lm -o ./e.50.1.exe^M /usr/local/bin/ld: /tmp/ccA8cExp.o: plugin needed to handle lto object^M output is: /usr/local/bin/ld: /tmp/ccA8cExp.o: plugin needed to handle lto object^M -- H.J. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 19:20 ` H.J. Lu @ 2014-11-13 19:29 ` Ilya Verbin 2014-11-13 19:42 ` H.J. Lu 2014-11-13 20:53 ` H.J. Lu 0 siblings, 2 replies; 18+ messages in thread From: Ilya Verbin @ 2014-11-13 19:29 UTC (permalink / raw) To: H.J. Lu; +Cc: Kirill Yukhin, GCC Development On 13 Nov 10:48, H.J. Lu wrote: > /usr/local/bin/ld: /tmp/ccA8cExp.o: plugin needed to handle lto object^M Looks like we should set flag_fat_lto_objects while compilation with offloading. I'll investigate this issue tomorrow. Could you please also show a version and configure options for ld? Thanks, -- Ilya ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 19:29 ` Ilya Verbin @ 2014-11-13 19:42 ` H.J. Lu 2014-11-13 20:53 ` H.J. Lu 1 sibling, 0 replies; 18+ messages in thread From: H.J. Lu @ 2014-11-13 19:42 UTC (permalink / raw) To: Ilya Verbin; +Cc: Kirill Yukhin, GCC Development On Thu, Nov 13, 2014 at 11:20 AM, Ilya Verbin <iverbin@gmail.com> wrote: > On 13 Nov 10:48, H.J. Lu wrote: >> /usr/local/bin/ld: /tmp/ccA8cExp.o: plugin needed to handle lto object^M > > Looks like we should set flag_fat_lto_objects while compilation with offloading. > I'll investigate this issue tomorrow. > > Could you please also show a version and configure options for ld? > > Thanks, > -- Ilya I am using binutils 20141107 trunk, which was configured with --with-sysroot=/ \ --enable-gold --enable-plugins --enable-threads --enable-targets=x86_64-linux \ --prefix=/usr/local \ --with-local-prefix=/usr/local -- H.J. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 19:29 ` Ilya Verbin 2014-11-13 19:42 ` H.J. Lu @ 2014-11-13 20:53 ` H.J. Lu 2014-11-13 21:01 ` Ilya Verbin 1 sibling, 1 reply; 18+ messages in thread From: H.J. Lu @ 2014-11-13 20:53 UTC (permalink / raw) To: Ilya Verbin; +Cc: Kirill Yukhin, GCC Development On Thu, Nov 13, 2014 at 11:20 AM, Ilya Verbin <iverbin@gmail.com> wrote: > On 13 Nov 10:48, H.J. Lu wrote: >> /usr/local/bin/ld: /tmp/ccA8cExp.o: plugin needed to handle lto object^M > > Looks like we should set flag_fat_lto_objects while compilation with offloading. > I'll investigate this issue tomorrow. > > Could you please also show a version and configure options for ld? > Section Headers: [Nr] Name Type Address Off Size ES Flg Lk Inf Al [ 0] NULL 0000000000000000 000000 000000 00 0 0 0 [ 1] .text PROGBITS 0000000000000000 000040 000204 00 AX 0 0 16 [ 2] .rela.text RELA 0000000000000000 001a60 0000d8 18 I 29 1 8 [ 3] .data PROGBITS 0000000000000000 000260 000040 00 WA 0 0 32 [ 4] .bss NOBITS 0000000000000000 0002a0 000000 00 WA 0 0 1 [ 5] .gnu.offload_lto_.profile.50035f9931394ed4 PROGBITS 0000000000000000 0002a0 000013 00 E 0 0 1 [ 6] .gnu.offload_lto_.icf.50035f9931394ed4 PROGBITS 0000000000000000 0002b3 00001e 00 E 0 0 1 [ 7] .gnu.offload_lto_.jmpfuncs.50035f9931394ed4 PROGBITS 0000000000000000 0002d1 000019 00 E 0 0 1 [ 8] .gnu.offload_lto_.inline.50035f9931394ed4 PROGBITS 0000000000000000 0002ea 00006c 00 E 0 0 1 [ 9] .gnu.offload_lto_.pureconst.50035f9931394ed4 PROGBITS 0000000000000000 000356 000013 00 E 0 0 1 [10] .gnu.offload_lto_vec_mult._omp_fn.1.50035f9931394ed4 PROGBITS 0000000000000000 000369 0004ab 00 E 0 0 1 [11] .gnu.offload_lto_vec_mult._omp_fn.0.50035f9931394ed4 PROGBITS 0000000000000000 000814 00035d 00 E 0 0 1 [12] .gnu.offload_lto_.symbol_nodes.50035f9931394ed4 PROGBITS 0000000000000000 000b71 000055 00 E 0 0 1 [13] .gnu.offload_lto_.refs.50035f9931394ed4 PROGBITS 0000000000000000 000bc6 000014 00 E 0 0 1 [14] .gnu.offload_lto_.offload_table.50035f9931394ed4 PROGBITS 0000000000000000 000bda 000011 00 E 0 0 1 [15] .gnu.offload_lto_.decls.50035f9931394ed4 PROGBITS 0000000000000000 000beb 00043d 00 E 0 0 1 [16] .gnu.offload_lto_.symtab.50035f9931394ed4 PROGBITS 0000000000000000 001028 000000 00 E 0 0 1 [17] .gnu.offload_lto_.opts PROGBITS 0000000000000000 001028 0000a9 00 E 0 0 1 Don't you need another plugin to claim those offload IR sections? -- H.J. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 20:53 ` H.J. Lu @ 2014-11-13 21:01 ` Ilya Verbin 2014-11-13 21:47 ` Jakub Jelinek 2014-11-13 21:47 ` [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC H.J. Lu 0 siblings, 2 replies; 18+ messages in thread From: Ilya Verbin @ 2014-11-13 21:01 UTC (permalink / raw) To: H.J. Lu; +Cc: Kirill Yukhin, GCC Development On 13 Nov 2014, at 23:11, H.J. Lu <hjl.tools@gmail.com> wrote: > > Section Headers: > [Nr] Name Type Address Off Size > ES Flg Lk Inf Al > [ 0] NULL 0000000000000000 000000 > 000000 00 0 0 0 > [ 1] .text PROGBITS 0000000000000000 000040 > 000204 00 AX 0 0 16 > [ 2] .rela.text RELA 0000000000000000 001a60 > 0000d8 18 I 29 1 8 > [ 3] .data PROGBITS 0000000000000000 000260 > 000040 00 WA 0 0 32 > [ 4] .bss NOBITS 0000000000000000 0002a0 > 000000 00 WA 0 0 1 > [ 5] .gnu.offload_lto_.profile.50035f9931394ed4 PROGBITS > 0000000000000000 0002a0 000013 00 E 0 0 1 > [ 6] .gnu.offload_lto_.icf.50035f9931394ed4 PROGBITS > 0000000000000000 0002b3 00001e 00 E 0 0 1 > [ 7] .gnu.offload_lto_.jmpfuncs.50035f9931394ed4 PROGBITS > 0000000000000000 0002d1 000019 00 E 0 0 1 > [ 8] .gnu.offload_lto_.inline.50035f9931394ed4 PROGBITS > 0000000000000000 0002ea 00006c 00 E 0 0 1 > [ 9] .gnu.offload_lto_.pureconst.50035f9931394ed4 PROGBITS > 0000000000000000 000356 000013 00 E 0 0 1 > [10] .gnu.offload_lto_vec_mult._omp_fn.1.50035f9931394ed4 PROGBITS > 0000000000000000 000369 0004ab 00 E 0 0 1 > [11] .gnu.offload_lto_vec_mult._omp_fn.0.50035f9931394ed4 PROGBITS > 0000000000000000 000814 00035d 00 E 0 0 1 > [12] .gnu.offload_lto_.symbol_nodes.50035f9931394ed4 PROGBITS > 0000000000000000 000b71 000055 00 E 0 0 1 > [13] .gnu.offload_lto_.refs.50035f9931394ed4 PROGBITS > 0000000000000000 000bc6 000014 00 E 0 0 1 > [14] .gnu.offload_lto_.offload_table.50035f9931394ed4 PROGBITS > 0000000000000000 000bda 000011 00 E 0 0 1 > [15] .gnu.offload_lto_.decls.50035f9931394ed4 PROGBITS > 0000000000000000 000beb 00043d 00 E 0 0 1 > [16] .gnu.offload_lto_.symtab.50035f9931394ed4 PROGBITS > 0000000000000000 001028 000000 00 E 0 0 1 > [17] .gnu.offload_lto_.opts PROGBITS 0000000000000000 001028 > 0000a9 00 E 0 0 1 > > Don't you need another plugin to claim those offload IR sections? No, the plan was that a regular plugin will just ignore offload IR sections by default. In your configuration ld detects a __gnu_lto_slim symbol and decided that the object file contains only LTO IR without asm. I am going to investigate where is the difference with my configuration and fix the bug. -- Ilya ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 21:01 ` Ilya Verbin @ 2014-11-13 21:47 ` Jakub Jelinek 2014-11-14 10:22 ` Richard Biener 2014-11-13 21:47 ` [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC H.J. Lu 1 sibling, 1 reply; 18+ messages in thread From: Jakub Jelinek @ 2014-11-13 21:47 UTC (permalink / raw) To: Ilya Verbin; +Cc: H.J. Lu, Kirill Yukhin, GCC Development On Thu, Nov 13, 2014 at 11:53:53PM +0300, Ilya Verbin wrote: > > Don't you need another plugin to claim those offload IR sections? > > No, the plan was that a regular plugin will just ignore offload IR > sections by default. In your configuration ld detects a __gnu_lto_slim > symbol and decided that the object file contains only LTO IR without asm. > I am going to investigate where is the difference with my configuration > and fix the bug. FYI, I'm getting +WARNING: program timed out. +FAIL: libgomp.c/examples-4/e.54.2.c execution test on both x86_64-linux and i686-linux (normal --enable-checking=yes,rtl bootstrap, no offloading configure options). binutils-2.24, ld.bfd. Jakub ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 21:47 ` Jakub Jelinek @ 2014-11-14 10:22 ` Richard Biener 2014-11-14 18:00 ` [committed] Improve e.54.2.c testcase Jakub Jelinek 0 siblings, 1 reply; 18+ messages in thread From: Richard Biener @ 2014-11-14 10:22 UTC (permalink / raw) To: Jakub Jelinek; +Cc: Ilya Verbin, H.J. Lu, Kirill Yukhin, GCC Development On Thu, Nov 13, 2014 at 10:47 PM, Jakub Jelinek <jakub@redhat.com> wrote: > On Thu, Nov 13, 2014 at 11:53:53PM +0300, Ilya Verbin wrote: >> > Don't you need another plugin to claim those offload IR sections? >> >> No, the plan was that a regular plugin will just ignore offload IR >> sections by default. In your configuration ld detects a __gnu_lto_slim >> symbol and decided that the object file contains only LTO IR without asm. >> I am going to investigate where is the difference with my configuration >> and fix the bug. > > FYI, I'm getting > +WARNING: program timed out. > +FAIL: libgomp.c/examples-4/e.54.2.c execution test > on both x86_64-linux and i686-linux (normal --enable-checking=yes,rtl > bootstrap, no offloading configure options). > binutils-2.24, ld.bfd. Me too, with default checking (timeouts are really annoying....). Richard. > Jakub ^ permalink raw reply [flat|nested] 18+ messages in thread
* [committed] Improve e.54.2.c testcase 2014-11-14 10:22 ` Richard Biener @ 2014-11-14 18:00 ` Jakub Jelinek 0 siblings, 0 replies; 18+ messages in thread From: Jakub Jelinek @ 2014-11-14 18:00 UTC (permalink / raw) To: Richard Biener; +Cc: Ilya Verbin, H.J. Lu, Kirill Yukhin, GCC Development On Fri, Nov 14, 2014 at 11:14:59AM +0100, Richard Biener wrote: > On Thu, Nov 13, 2014 at 10:47 PM, Jakub Jelinek <jakub@redhat.com> wrote: > > On Thu, Nov 13, 2014 at 11:53:53PM +0300, Ilya Verbin wrote: > >> > Don't you need another plugin to claim those offload IR sections? > >> > >> No, the plan was that a regular plugin will just ignore offload IR > >> sections by default. In your configuration ld detects a __gnu_lto_slim > >> symbol and decided that the object file contains only LTO IR without asm. > >> I am going to investigate where is the difference with my configuration > >> and fix the bug. > > > > FYI, I'm getting > > +WARNING: program timed out. > > +FAIL: libgomp.c/examples-4/e.54.2.c execution test > > on both x86_64-linux and i686-linux (normal --enable-checking=yes,rtl > > bootstrap, no offloading configure options). > > binutils-2.24, ld.bfd. > > Me too, with default checking (timeouts are really annoying....). So, it turns out that the problem is in heavily parallel testing that these two testcases spawn just way too many #pragma omp parallels in sequence (32768), unnecessarily so. And, with the default partial busy waiting (something in between OMP_WAIT_POLICY=passive and active) if too often when some threads busy wait on some barrier big amounts of other jobs (other tests) contend for the CPUs, it means the test can run for minutes, while normally it takes 0.5s. Fixed thusly, committed to trunk. With all the additions to the libgomp test, seems even on a fast box (but with heavy contention) libgomp testing now takes already 30 minutes or so, I guess I should play with the possibility to set OMP_WAIT_POLICY=passive for libgomp testing in the environment of the tests, e.g. if make -jN was used (and keep the default wait policy if it wasn't). 2014-11-14 Jakub Jelinek <jakub@redhat.com> * libgomp.c/examples-4/e.54.2.c (main): Use N / 8 instead of 32 as block_size. * libgomp.fortran/examples-4/e.54.2.f90 (e_54_1): Use n / 8 instead of 32 as block_size. --- libgomp/testsuite/libgomp.c/examples-4/e.54.2.c.jj 2014-11-13 15:13:18.000000000 +0100 +++ libgomp/testsuite/libgomp.c/examples-4/e.54.2.c 2014-11-14 15:07:07.428485712 +0100 @@ -61,7 +61,7 @@ int main () init (v1, v2, N); p1 = dotprod_ref (v1, v2, N); - p2 = dotprod (v1, v2, N, 32, 2, 8); + p2 = dotprod (v1, v2, N, N / 8, 2, 8); check (p1, p2); --- libgomp/testsuite/libgomp.fortran/examples-4/e.54.2.f90.jj 2014-11-13 15:13:17.000000000 +0100 +++ libgomp/testsuite/libgomp.fortran/examples-4/e.54.2.f90 2014-11-14 15:08:41.471776859 +0100 @@ -59,7 +59,7 @@ program e_54_1 allocate (B(n), C(n)) call init (B, C, n) ref = dotprod_ref (B, C, n) - d = dotprod (B, C, n, 32, 2, 8) + d = dotprod (B, C, n, n / 8, 2, 8) call check (ref, d) deallocate (B, C) end program Jakub ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 21:01 ` Ilya Verbin 2014-11-13 21:47 ` Jakub Jelinek @ 2014-11-13 21:47 ` H.J. Lu 1 sibling, 0 replies; 18+ messages in thread From: H.J. Lu @ 2014-11-13 21:47 UTC (permalink / raw) To: Ilya Verbin; +Cc: Kirill Yukhin, GCC Development On Thu, Nov 13, 2014 at 12:53 PM, Ilya Verbin <iverbin@gmail.com> wrote: > On 13 Nov 2014, at 23:11, H.J. Lu <hjl.tools@gmail.com> wrote: >> >> Section Headers: >> [Nr] Name Type Address Off Size >> ES Flg Lk Inf Al >> [ 0] NULL 0000000000000000 000000 >> 000000 00 0 0 0 >> [ 1] .text PROGBITS 0000000000000000 000040 >> 000204 00 AX 0 0 16 >> [ 2] .rela.text RELA 0000000000000000 001a60 >> 0000d8 18 I 29 1 8 >> [ 3] .data PROGBITS 0000000000000000 000260 >> 000040 00 WA 0 0 32 >> [ 4] .bss NOBITS 0000000000000000 0002a0 >> 000000 00 WA 0 0 1 >> [ 5] .gnu.offload_lto_.profile.50035f9931394ed4 PROGBITS >> 0000000000000000 0002a0 000013 00 E 0 0 1 >> [ 6] .gnu.offload_lto_.icf.50035f9931394ed4 PROGBITS >> 0000000000000000 0002b3 00001e 00 E 0 0 1 >> [ 7] .gnu.offload_lto_.jmpfuncs.50035f9931394ed4 PROGBITS >> 0000000000000000 0002d1 000019 00 E 0 0 1 >> [ 8] .gnu.offload_lto_.inline.50035f9931394ed4 PROGBITS >> 0000000000000000 0002ea 00006c 00 E 0 0 1 >> [ 9] .gnu.offload_lto_.pureconst.50035f9931394ed4 PROGBITS >> 0000000000000000 000356 000013 00 E 0 0 1 >> [10] .gnu.offload_lto_vec_mult._omp_fn.1.50035f9931394ed4 PROGBITS >> 0000000000000000 000369 0004ab 00 E 0 0 1 >> [11] .gnu.offload_lto_vec_mult._omp_fn.0.50035f9931394ed4 PROGBITS >> 0000000000000000 000814 00035d 00 E 0 0 1 >> [12] .gnu.offload_lto_.symbol_nodes.50035f9931394ed4 PROGBITS >> 0000000000000000 000b71 000055 00 E 0 0 1 >> [13] .gnu.offload_lto_.refs.50035f9931394ed4 PROGBITS >> 0000000000000000 000bc6 000014 00 E 0 0 1 >> [14] .gnu.offload_lto_.offload_table.50035f9931394ed4 PROGBITS >> 0000000000000000 000bda 000011 00 E 0 0 1 >> [15] .gnu.offload_lto_.decls.50035f9931394ed4 PROGBITS >> 0000000000000000 000beb 00043d 00 E 0 0 1 >> [16] .gnu.offload_lto_.symtab.50035f9931394ed4 PROGBITS >> 0000000000000000 001028 000000 00 E 0 0 1 >> [17] .gnu.offload_lto_.opts PROGBITS 0000000000000000 001028 >> 0000a9 00 E 0 0 1 >> >> Don't you need another plugin to claim those offload IR sections? > > No, the plan was that a regular plugin will just ignore offload IR sections by default. In your configuration ld detects a __gnu_lto_slim symbol and decided that the object file contains only LTO IR without asm. I am going to investigate where is the difference with my configuration and fix the bug. > You may need to install the current binutils to see it. -- H.J. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 14:24 ` [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC Kirill Yukhin 2014-11-13 15:17 ` Tobias Burnus 2014-11-13 17:41 ` H.J. Lu @ 2014-11-13 17:58 ` David Edelsohn 2014-11-13 20:12 ` Gerald Pfeifer 2 siblings, 1 reply; 18+ messages in thread From: David Edelsohn @ 2014-11-13 17:58 UTC (permalink / raw) To: Kirill Yukhin; +Cc: GCC Development Kirill, The patches have broken bootstrap on AIX and probably on other non-GNU platforms. strchrnul() is a GNU extension. /nasfarm/edelsohn/src/src/gcc/lto-wrapper.c: In function 'unsigned int parse_env_var(const char*, char***, const char*)': /nasfarm/edelsohn/src/src/gcc/lto-wrapper.c:427:35: error: 'strchrnul' was not declared in this scope nextval = strchrnul (curval, ':'); ^ /nasfarm/edelsohn/src/src/gcc/lto-wrapper.c: In function 'void append_offload_options(obstack*, const char*, cl_decoded_option*, unsigned int)': /nasfarm/edelsohn/src/src/gcc/lto-wrapper.c:584:34: error: 'strchrnul' was not declared in this scope next = strchrnul (cur, ','); /nasfarm/edelsohn/src/src/gcc/gcc.c: In function 'void handle_foffload_option(const char*)': /nasfarm/edelsohn/src/src/gcc/gcc.c:3378:28: error: 'strchrnul' was not declared in this scope end = strchrnul (arg, '='); ^ Thanks, David On Thu, Nov 13, 2014 at 9:14 AM, Kirill Yukhin <kirill.yukhin@gmail.com> wrote: > Hello, > > Support of OpenMP 4.0 offloading to future Xeon Phi was fully checked in to main > trunk. > > Thanks everybody who helped w/ development and review. > > -- > Thanks, K ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC 2014-11-13 17:58 ` David Edelsohn @ 2014-11-13 20:12 ` Gerald Pfeifer 0 siblings, 0 replies; 18+ messages in thread From: Gerald Pfeifer @ 2014-11-13 20:12 UTC (permalink / raw) To: David Edelsohn, Kirill Yukhin; +Cc: gcc On Thursday 2014-11-13 12:41, David Edelsohn wrote: > The patches have broken bootstrap on AIX and probably on other non-GNU > platforms. strchrnul() is a GNU extension. Yep, FreeBSD 8 is broken as well. The failure rate of my nightly testers over the last two weeks must be around 50%. Gerald ^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2014-11-14 17:27 UTC | newest] Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <20141021171323.GA47586@msticlxl57.ims.intel.com> 2014-11-13 14:24 ` [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC Kirill Yukhin 2014-11-13 15:17 ` Tobias Burnus 2014-11-13 15:44 ` Jakub Jelinek 2014-11-13 16:04 ` Kirill Yukhin 2014-11-13 16:19 ` Kirill Yukhin 2014-11-13 17:41 ` H.J. Lu 2014-11-13 18:48 ` Ilya Verbin 2014-11-13 19:20 ` H.J. Lu 2014-11-13 19:29 ` Ilya Verbin 2014-11-13 19:42 ` H.J. Lu 2014-11-13 20:53 ` H.J. Lu 2014-11-13 21:01 ` Ilya Verbin 2014-11-13 21:47 ` Jakub Jelinek 2014-11-14 10:22 ` Richard Biener 2014-11-14 18:00 ` [committed] Improve e.54.2.c testcase Jakub Jelinek 2014-11-13 21:47 ` [PATCH 0/4] OpenMP 4.0 offloading to Intel MIC H.J. Lu 2014-11-13 17:58 ` David Edelsohn 2014-11-13 20:12 ` Gerald Pfeifer
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).