public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [GOMP4, RFC] OpenMP4 offload support for Intel PHI targets.
@ 2014-07-02  8:38 Kirill Yukhin
  2014-07-06 22:11 ` Gerald Pfeifer
  2014-07-08 11:50 ` Kirill Yukhin
  0 siblings, 2 replies; 11+ messages in thread
From: Kirill Yukhin @ 2014-07-02  8:38 UTC (permalink / raw)
  To: GCC Patches
  Cc: Jakub Jelinek, bernds, thomas, Richard Biener, andrey.turetskiy, iverbin

Hello,
I would like to announce creation of a dedicated branch gomp4-offload to speed up review of FE-independent offload-related features.

This branch includes:
     - set of necessary patches from gomp4 branch
     - set of patches which we were developed internally and were unable to share
     - yet to be checked-into-trunk `liboffloadmic'
       (review started here: https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02133.html)
     - 10 new tests for offload written using OpenMP4, which replicates `OpenMP4 examples'

This branch should be capable to perform offload to Intel targets (Xeon PHI)
to help people to perform experiments emulator of MIC's software stack is included.
This emulator lies under `liboffloadmic' and reproduces MIC's HW and SW stack behavior
allowing to perform non-fallback execution of target regions using the host machine.
We're going to start efforts to review and integrate these changes to GCC main trunk.

We appreciate your feedback!
Many changes are vexed, especially autogen-related since we're dummies here.
Currently bootstrap is broken (because of few warnings) and will be fixed soon.

Here is a manual describing how to build compiler and run OpenMP offload apps:
1. Building accel compiler:
   /gcc_src/configure --disable-bootstrap --enable-accelerator=intelmic --enable-as-accelerator-for=x86_64-unknown-linux-gnu --enable-liboffloadmic=target --prefix=/install_mic
   make
   make install

2. Building host compiler:
   export LIBOFFLOAD_TARGET_PATH="/install_mic/lib64"
   /gcc_src/configure --disable-bootstrap --enable-accelerator=intelmic --enable-liboffloadmic=host --prefix=/install_host
   make
   make install

3. Building an application:
   export LD_LIBRARY_PATH="/install_host/lib64"
   export MKOFFLOAD="/install_mic/libexec/gcc/x86_64-unknown-linux-gnu/4.10.0/accel/x86_64-unknown-linux-gnu/mkoffload"
   /install_host/bin/gcc -fopenmp -flto test.c

4. Running an application:
   export LIBGOMP_PLUGIN_PATH="/gcc_build/x86_64-unknown-linux-gnu/libgomp/plugins/intelmic"
   export MIC_LD_LIBRARY_PATH="/install_mic/lib64/"
   ./a.out

5. make check. Run tests (w/ emulator)
   export LD_LIBRARY_PATH="/install_host/lib64"
   export MKOFFLOAD="/install_mic/libexec/gcc/x86_64-unknown-linux-gnu/4.10.0/accel/x86_64-unknown-linux-gnu/mkoffload"
   export LIBGOMP_PLUGIN_PATH="/gcc_build/x86_64-unknown-linux-gnu/libgomp/plugins/intelmic"
   export MIC_LD_LIBRARY_PATH="/install_mic/lib64/"
   make check-target-libgomp

Do not delete build dir of the host compiler, since 'make install' for libgomp plugin is not working yet.
Also there might be an issue with building libgomp plugin when using relative path to the 'configure'.

It is GIT-only branch, name is: kyukhin/gomp4-offload
URL: https://gcc.gnu.org/git/?p=gcc.git;a=shortlog;h=refs/heads/kyukhin/gomp4-offload

--
Thanks, K

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2014-09-26 12:43 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-07-02  8:38 [GOMP4, RFC] OpenMP4 offload support for Intel PHI targets Kirill Yukhin
2014-07-06 22:11 ` Gerald Pfeifer
2014-07-08 11:50 ` Kirill Yukhin
2014-07-14  6:08   ` Kirill Yukhin
2014-07-15  9:43     ` Kirill Yukhin
2014-07-19 10:43       ` Kirill Yukhin
2014-07-25 17:10         ` Kirill Yukhin
2014-08-07 14:36           ` Kirill Yukhin
2014-08-21 13:51             ` Ilya Verbin
2014-09-09 11:21               ` Ilya Verbin
2014-09-26 12:43                 ` Ilya Verbin

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).