From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24432 invoked by alias); 2 Jul 2014 08:38:54 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 24386 invoked by uid 89); 2 Jul 2014 08:38:50 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-yh0-f42.google.com Received: from mail-yh0-f42.google.com (HELO mail-yh0-f42.google.com) (209.85.213.42) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Wed, 02 Jul 2014 08:38:45 +0000 Received: by mail-yh0-f42.google.com with SMTP id i57so6618203yha.15 for ; Wed, 02 Jul 2014 01:38:43 -0700 (PDT) X-Received: by 10.236.37.231 with SMTP id y67mr1579753yha.146.1404290323431; Wed, 02 Jul 2014 01:38:43 -0700 (PDT) Received: from msticlxl57.ims.intel.com (fmdmzpr04-ext.fm.intel.com. [192.55.55.39]) by mx.google.com with ESMTPSA id f2sm32763728yhc.41.2014.07.02.01.38.39 for (version=TLSv1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 02 Jul 2014 01:38:42 -0700 (PDT) Date: Wed, 02 Jul 2014 08:38:00 -0000 From: Kirill Yukhin To: GCC Patches Cc: Jakub Jelinek , bernds@codesourcery.com, thomas@codesourcery.com, Richard Biener , andrey.turetskiy@gmail.com, iverbin@gmail.com Subject: [GOMP4, RFC] OpenMP4 offload support for Intel PHI targets. Message-ID: <20140702083817.GA1311@msticlxl57.ims.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) X-IsSubscribed: yes X-SW-Source: 2014-07/txt/msg00102.txt.bz2 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