<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic The Intel® Parallel Studio XE in Software Archive</title>
    <link>https://community.intel.com/t5/Software-Archive/offload/m-p/1002052#M30532</link>
    <description>&lt;P&gt;The &lt;STRONG&gt;Intel® Parallel Studio XE 2015&lt;/STRONG&gt; (15.0 compiler) release contains new feature support for passing an array of pointers as discussed in the article:&lt;STRONG&gt; &lt;A href="https://software.intel.com/en-us/articles/xeon-phi-coprocessor-data-transfer-array-of-pointers-using-language-extensions-for-offload" target="_blank"&gt;Data transfer of an "array of pointers" using the Intel® Language Extensions for Offload (LEO) for the Intel® Xeon Phi™ coprocessor&lt;/A&gt;&lt;/STRONG&gt; that does not require using the Virtual shared model.&lt;/P&gt;

&lt;P&gt;Regarding the size shown in the status return, I am unable to reproduce anything resembling this so can you tell me where are you seeing this value?&lt;/P&gt;</description>
    <pubDate>Thu, 04 Dec 2014 10:32:19 GMT</pubDate>
    <dc:creator>Kevin_D_Intel</dc:creator>
    <dc:date>2014-12-04T10:32:19Z</dc:date>
    <item>
      <title>offload</title>
      <link>https://community.intel.com/t5/Software-Archive/offload/m-p/1002050#M30530</link>
      <description>&lt;P&gt;HI,&lt;/P&gt;

&lt;P&gt;I have a problem with trying to offload an array of pointers to Intel Phi.&lt;/P&gt;

&lt;P&gt;I have tried a few options from your examples, but I have a few questions.&lt;/P&gt;

&lt;P&gt;In all the examples shown the array subscripts are from 0:n even if the array&lt;/P&gt;

&lt;P&gt;was declared as size n, eg: float * t[100]&amp;nbsp; (0:99) in the offload pragma it is shown as offload in(t[0:100]).&lt;/P&gt;

&lt;P&gt;is this right?&lt;/P&gt;

&lt;P&gt;Another question is: on transferring 4,845,568 bytes, in the status return the in size is shown as 13,985,8021,538,504&amp;nbsp; this can't be correct?&lt;/P&gt;

&lt;P&gt;I am using Windows 7 Ultimate with Visual Studio 2013, Parallel Studio XE 2015 and MPSS-3.3-windows&lt;/P&gt;

&lt;P&gt;regards,&lt;/P&gt;

&lt;P&gt;Phil Sharrock&lt;/P&gt;

&lt;P&gt;phil.sharrock@physics.cr.man.ac.uk&lt;/P&gt;</description>
      <pubDate>Wed, 26 Nov 2014 14:02:14 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/offload/m-p/1002050#M30530</guid>
      <dc:creator>Philip_S_</dc:creator>
      <dc:date>2014-11-26T14:02:14Z</dc:date>
    </item>
    <item>
      <title>Unlike standard Fortran array</title>
      <link>https://community.intel.com/t5/Software-Archive/offload/m-p/1002051#M30531</link>
      <description>&lt;P&gt;Unlike standard Fortran array notation, the notation used on the offload statements in C/C++ is start:length, not start:end. Of course, being an old time Fortran programmer, I think the Fortran way is the "right" way, but that is not how old time C programmers think. So offload in(t[0:100]) means offload elements t[0] through t[99].&lt;/P&gt;

&lt;P&gt;Given that you are passing an array of pointers, are the values pointed to declared as _Cilk_shared? Variables must be in shared virtual memory in order for the pointers on the host to map to the same variables on the coprocessor. See Offload Using Shared Virtual Memory in the User and Reference Guide for the Intel® C++ Compiler in the &lt;A href="https://software.intel.com/en-us/intel-software-technical-documentation"&gt;reference manuals.&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 26 Nov 2014 19:12:27 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/offload/m-p/1002051#M30531</guid>
      <dc:creator>Frances_R_Intel</dc:creator>
      <dc:date>2014-11-26T19:12:27Z</dc:date>
    </item>
    <item>
      <title>The Intel® Parallel Studio XE</title>
      <link>https://community.intel.com/t5/Software-Archive/offload/m-p/1002052#M30532</link>
      <description>&lt;P&gt;The &lt;STRONG&gt;Intel® Parallel Studio XE 2015&lt;/STRONG&gt; (15.0 compiler) release contains new feature support for passing an array of pointers as discussed in the article:&lt;STRONG&gt; &lt;A href="https://software.intel.com/en-us/articles/xeon-phi-coprocessor-data-transfer-array-of-pointers-using-language-extensions-for-offload" target="_blank"&gt;Data transfer of an "array of pointers" using the Intel® Language Extensions for Offload (LEO) for the Intel® Xeon Phi™ coprocessor&lt;/A&gt;&lt;/STRONG&gt; that does not require using the Virtual shared model.&lt;/P&gt;

&lt;P&gt;Regarding the size shown in the status return, I am unable to reproduce anything resembling this so can you tell me where are you seeing this value?&lt;/P&gt;</description>
      <pubDate>Thu, 04 Dec 2014 10:32:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/offload/m-p/1002052#M30532</guid>
      <dc:creator>Kevin_D_Intel</dc:creator>
      <dc:date>2014-12-04T10:32:19Z</dc:date>
    </item>
    <item>
      <title>Kevin,</title>
      <link>https://community.intel.com/t5/Software-Archive/offload/m-p/1002053#M30533</link>
      <description>&lt;P&gt;Kevin,&lt;/P&gt;

&lt;P&gt;My array of pointers is an array of pointers pointing to other pointers.&lt;/P&gt;

&lt;P&gt;not just a single array. after getting the offload report to work I get an error message as fiollows&lt;/P&gt;

&lt;P&gt;offload error: cannot find offload entry.&lt;/P&gt;

&lt;P&gt;I am using C++ and MS visual studio 2013 with Intel Parallel studio XE 2015&lt;/P&gt;

&lt;P&gt;I am trying this version of code to transfer an array of pointers:-&lt;/P&gt;

&lt;P&gt;for(i=0;i&amp;lt;zSz;i++)&lt;BR /&gt;
	&amp;nbsp; {&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; fpIn=ApIn&lt;I&gt;;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; #pragma offload_transfer target(mic:0) mandatory in(fpIn[0:ApInsz]:ALLOC RETAIN) nocopy(ApIn) status(offstat)&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; if(offstat.result != OFFLOAD_SUCCESS) return -99;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ApIn&lt;I&gt;=fpIn;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;
	&amp;nbsp; }&lt;/I&gt;&lt;/I&gt;&lt;/P&gt;

&lt;P&gt;Any suggestions?&lt;/P&gt;

&lt;P&gt;Phil&lt;/P&gt;</description>
      <pubDate>Fri, 05 Dec 2014 15:52:14 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/offload/m-p/1002053#M30533</guid>
      <dc:creator>Philip_S_</dc:creator>
      <dc:date>2014-12-05T15:52:14Z</dc:date>
    </item>
    <item>
      <title>The snippet isn’t enough to</title>
      <link>https://community.intel.com/t5/Software-Archive/offload/m-p/1002054#M30534</link>
      <description>&lt;P&gt;The snippet isn’t enough to understand the runtime error. The runtime error can occur from calling a function within an offload construct where an instance of the function is not present in the offload binary, but maybe there's something else in your case. If you can provide a bit more context (declarations and code) then I could perhaps re-create something I can toy with a bit further.&lt;/P&gt;

&lt;P&gt;The &lt;STRONG&gt;offload_transfer&lt;/STRONG&gt; only performs data transfer so the block of code you shown below that is executed on the host and not the target. You may already understand that and maybe I am misreading the snippet thinking they are related and that you are trying to avoid the transfer of ApIn related to that code block with the &lt;STRONG&gt;nocopy(ApIn)&lt;/STRONG&gt;, which for the &lt;STRONG&gt;offload_transfer&lt;/STRONG&gt; isn't necessary.&lt;/P&gt;

&lt;P&gt;The offload status is only usable on host and not on the coprocessor.&lt;/P&gt;</description>
      <pubDate>Fri, 05 Dec 2014 17:13:26 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/offload/m-p/1002054#M30534</guid>
      <dc:creator>Kevin_D_Intel</dc:creator>
      <dc:date>2014-12-05T17:13:26Z</dc:date>
    </item>
  </channel>
</rss>

