[Beowulf] Intel Phi musings

Dmitri Chubarov dmitri.chubarov at gmail.com
Fri Mar 1 03:46:27 PST 2013

On Thu, Feb 28, 2013 at 10:30 AM, "C. Bergström"
<cbergstrom at pathscale.com>wrote:

> On 02/28/13 09:58 AM, Christopher Samuel wrote:
> > Hash: SHA1
> >
> > On 28/02/13 13:47,  C. Bergstr￶m  wrote:
> >
> >> Ported how exactly? I thought Intel just pushes for a recompile and
> >> didn't introduce a new programming model
> > Recompiling is only useful if you're running your code on the Phi
> > itself (as Stu does) and thus can cope with the tiny amount of RAM it
> > has.
> >
> > However, the other model being pushed is as an offload device (like
> > GPGPU) as you can see here:
> >
> >
> http://www.tacc.utexas.edu/user-services/user-guides/stampede-user-guide#mic
> >
> > It's the offloading use (in free or proprietary applications) that I'm
> > curious about.
> (lazy question)
> Is there a full guide to the pragma/directives that are supported?  Does
> it have a "marketing" name yet or a pdf reference..
> Unless I missed something I only see this being wrapped around some OpenMP
> #pragma offload target(mic:0)

Since the pragmas are an Intel extenstion the authoritative documentation
can be found in the Intel Compiler document bundle:

Basically there are four pragmas:
offload, offload_wait, offload_transfer and offload_attribute

Each has a specific set of clauses that may follow a pragma.

Practical examples of usage can get cluttered since each pragma might have
a dozen clauses accompanying it all in one line of course and each clause
is verbose too.

Here is an example from an Intel presentation that can give a taste of it:

#pragma offload_transfer target(mic:0) nocopy(data:length(num_elements)
free_if(0)) ...

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.beowulf.org/pipermail/beowulf/attachments/20130301/84582e04/attachment.html>

More information about the Beowulf mailing list