<?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 offload overhead in Software Archive</title>
    <link>https://community.intel.com/t5/Software-Archive/offload-overhead/m-p/997245#M28627</link>
    <description>&lt;P&gt;If we don't use native mode, is there a way to disable creating memory buffer in the offload region? The CPU time is too much so that my accelerated program cannot achieve speedup. Note that all the IN-variables are scalar.&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Line]&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 144&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag] &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Tag 1598&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Start Offload&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Initialize function __offload_entry_AcceleratorUtilitiesOp_C_144doArrayDa_cfaca3494cc6212aae7ad712694b42c4&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Create buffer from Host memory&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Create buffer from MIC memory&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Send pointer data&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; CPU-&amp;gt;MIC pointer data 1&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Gather copyin data&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; CPU-&amp;gt;MIC copyin data 68&amp;nbsp;&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Compute task on MIC&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Receive pointer data&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; MIC-&amp;gt;CPU pointer data 0&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [State] &amp;nbsp; Start target function __offload_entry_AcceleratorUtilitiesOp_C_144doArrayDa_cfaca3494cc6212aae7ad712694b42c4&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; dst_begin&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; src_begin&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; num_depth&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; ngroups&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; dst_offset&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; src_offset&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; dst_addr&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; src_addr&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; box_inc0&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; op&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; box_inc1&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; dst_inc0&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; src_inc0&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; box_inc2&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; dst_inc1&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; src_inc1&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [State] &amp;nbsp; Scatter copyin data&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [State] &amp;nbsp; Gather copyout data&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [State] &amp;nbsp; MIC-&amp;gt;CPU copyout data &amp;nbsp; 0&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Scatter copyout data&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [CPU Time]&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0.002393(seconds)&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [CPU-&amp;gt;MIC Data] &amp;nbsp; 69 (bytes)&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [MIC Time]&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0.000994(seconds)&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [MIC-&amp;gt;CPU Data] &amp;nbsp; 0 (bytes)&lt;/P&gt;</description>
    <pubDate>Sat, 19 Apr 2014 04:36:45 GMT</pubDate>
    <dc:creator>Guangming_T_</dc:creator>
    <dc:date>2014-04-19T04:36:45Z</dc:date>
    <item>
      <title>offload overhead</title>
      <link>https://community.intel.com/t5/Software-Archive/offload-overhead/m-p/997245#M28627</link>
      <description>&lt;P&gt;If we don't use native mode, is there a way to disable creating memory buffer in the offload region? The CPU time is too much so that my accelerated program cannot achieve speedup. Note that all the IN-variables are scalar.&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Line]&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 144&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag] &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Tag 1598&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Start Offload&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Initialize function __offload_entry_AcceleratorUtilitiesOp_C_144doArrayDa_cfaca3494cc6212aae7ad712694b42c4&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Create buffer from Host memory&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Create buffer from MIC memory&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Send pointer data&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; CPU-&amp;gt;MIC pointer data 1&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Gather copyin data&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; CPU-&amp;gt;MIC copyin data 68&amp;nbsp;&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Compute task on MIC&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Receive pointer data&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; MIC-&amp;gt;CPU pointer data 0&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [State] &amp;nbsp; Start target function __offload_entry_AcceleratorUtilitiesOp_C_144doArrayDa_cfaca3494cc6212aae7ad712694b42c4&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; dst_begin&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; src_begin&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; num_depth&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; ngroups&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; dst_offset&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; src_offset&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; dst_addr&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; src_addr&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; box_inc0&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; op&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; box_inc1&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; dst_inc0&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; src_inc0&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; box_inc2&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; dst_inc1&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [Var] &amp;nbsp; &amp;nbsp; src_inc1&amp;nbsp; IN&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [State] &amp;nbsp; Scatter copyin data&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [State] &amp;nbsp; Gather copyout data&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [State] &amp;nbsp; MIC-&amp;gt;CPU copyout data &amp;nbsp; 0&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [State] &amp;nbsp; Scatter copyout data&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [HOST]&amp;nbsp; [Tag 1598] [CPU Time]&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0.002393(seconds)&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [CPU-&amp;gt;MIC Data] &amp;nbsp; 69 (bytes)&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [MIC Time]&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0.000994(seconds)&lt;/P&gt;

&lt;P style="margin-bottom: 0px; font-size: 16px; line-height: normal; font-family: Menlo;"&gt;[Offload] [MIC 0] [Tag 1598] [MIC-&amp;gt;CPU Data] &amp;nbsp; 0 (bytes)&lt;/P&gt;</description>
      <pubDate>Sat, 19 Apr 2014 04:36:45 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/offload-overhead/m-p/997245#M28627</guid>
      <dc:creator>Guangming_T_</dc:creator>
      <dc:date>2014-04-19T04:36:45Z</dc:date>
    </item>
    <item>
      <title>It would help seeing some</title>
      <link>https://community.intel.com/t5/Software-Archive/offload-overhead/m-p/997246#M28628</link>
      <description>&lt;P&gt;It would help seeing some code to better understand your interest. From the report, it appears you have pointer data within the scope of the offload although no associated data transfer for that.&lt;BR /&gt;
	The &lt;EM&gt;alloc_if/free_if/length&lt;/EM&gt; can influence the allocation. Just playing with things, nocopy() with a length(0) or alloc_if(0) appears to avoid the allocation but makes the pointer data unusable within the scope of the offload but I don't know whether that's helpful.&lt;BR /&gt;
	You might refer to &lt;STRONG&gt;Minimize Coprocessor Memory Allocation Overhead&lt;/STRONG&gt; and &lt;STRONG&gt;Explicitly managed Heap-allocated Data&lt;/STRONG&gt; on the &lt;A href="https://software.intel.com/en-us/articles/effective-use-of-the-intel-compilers-offload-features" target="_blank"&gt;&lt;STRONG&gt;Effective Use of the Intel Compiler's Offload Features&lt;/STRONG&gt;&lt;/A&gt; article to see whether any information there helps with your interest.&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 21 Apr 2014 17:21:54 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/offload-overhead/m-p/997246#M28628</guid>
      <dc:creator>Kevin_D_Intel</dc:creator>
      <dc:date>2014-04-21T17:21:54Z</dc:date>
    </item>
    <item>
      <title>Hi, Kevin,</title>
      <link>https://community.intel.com/t5/Software-Archive/offload-overhead/m-p/997247#M28629</link>
      <description>&lt;P&gt;Hi, Kevin,&lt;/P&gt;

&lt;P&gt;The code snippet is posted. &amp;nbsp;Thanks!&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; void *dst_addr = (void *)dst; //a persist pointer on MIC&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void *src_addr = (void *)src; //a persist pointer on MIC&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int dst_inc0,dst_inc1,dst_inc2;&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int src_inc0,src_inc1,src_inc2;&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int box_inc0,box_inc1,box_inc2;&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dst_inc0 = dst_inc[0];&lt;/SPAN&gt;&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; src_inc0 = src_inc[0];&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; box_inc0 = box_inc[0];&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dst_inc1 = dst_inc[1];&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; src_inc1 = src_inc[1];&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; box_inc1 = box_inc[1];&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dst_inc2 = dst_inc[2];&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; src_inc2 = src_inc[2];&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; box_inc2 = box_inc[2];&lt;/P&gt;

&lt;P&gt;#pragma offload target(mic)&lt;/P&gt;

&lt;P&gt;{&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TYPE *dst_ptr = (TYPE *) dst_addr;&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TYPE *src_ptr = (TYPE *) src_addr;&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int dst_begin_tmp = dst_begin;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int src_begin_tmp = src_begin;&lt;/P&gt;

&lt;P style="margin-left:21.0pt;"&gt;&amp;nbsp; for (int d = 0; d &amp;lt; num_depth; ++d) {&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int nb = 0; nb &amp;lt; box_inc1*box_inc2; nb++) {&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int dst_counter = dst_begin_tmp + (nb/box_inc1)*dst_inc1*dst_inc0 + (nb%box_inc1) * dst_inc0;&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int src_counter = src_begin_tmp + (nb/box_inc1)*src_inc1*src_inc0 + (nb%box_inc1) * src_inc0;&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; box_inc0; i++) {&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; op(dst_ptr[dst_counter+i], src_ptr[src_counter+i]); //op is copy/max/min/sum&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;

&lt;P style="margin-left:42.0pt;"&gt;}&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp; dst_begin_tmp += dst_offset;&lt;/P&gt;

&lt;P align="left"&gt;&amp;nbsp;&amp;nbsp; src_begin_tmp += src_offset;&lt;/P&gt;

&lt;P&gt;}&lt;/P&gt;</description>
      <pubDate>Mon, 21 Apr 2014 23:22:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/offload-overhead/m-p/997247#M28629</guid>
      <dc:creator>Guangming_T_</dc:creator>
      <dc:date>2014-04-21T23:22:03Z</dc:date>
    </item>
  </channel>
</rss>

