This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH 1/5] OpenACC 2.0 support for libgomp - OpenACC runtime, NVidia PTX/CUDA plugin (repost)
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Julian Brown <julian at codesourcery dot com>
- Cc: gcc-patches at gcc dot gnu dot org, Thomas Schwinge <thomas at codesourcery dot com>, Ilya Verbin <iverbin at gmail dot com>
- Date: Wed, 12 Nov 2014 12:12:07 +0100
- Subject: Re: [PATCH 1/5] OpenACC 2.0 support for libgomp - OpenACC runtime, NVidia PTX/CUDA plugin (repost)
- Authentication-results: sourceware.org; auth=none
- References: <20140923191931 dot 2177e60f at octopus> <20141111135323 dot 29e0f27b at octopus> <20141112100626 dot GP5026 at tucnak dot redhat dot com> <20141112110326 dot 5b2525c3 at octopus>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Wed, Nov 12, 2014 at 11:03:26AM +0000, Julian Brown wrote:
> Thanks for the review! I'll work on addressing your comments. Your
> characterization of the host_nonshm plugin sounds accurate, but OOI,
> what does the Intel MIC plugin do differently that means it is not
> subject to the same problem with target variables?
For the *-intelmicemul-* offloading target, the plugin uses the offloading
library and runs the offloading region in a separate process.
So, x86_64 (or i?86) ELF shared libraries are embedded into the data
sections of your programs, when encountering target region for the first
time it extracts them, saves them into temporary directory as shared
libraries, saves there also a short binary, runs the binary and through
the offloading library communicates between the host (one process) and
offloading target (another process on the same host).
So, you really can use the *-intelmicemul-* offloading yourself too, without
any special hardware, to test OpenACC (at least, as soon as all the
necessary hooks are wired in the plugin if any are missing right now).
Jakub