<?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 Hi, in Software Archive</title>
    <link>https://community.intel.com/t5/Software-Archive/host-device-bandwidth-problem/m-p/1042908#M46741</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;

&lt;P&gt;Problem 1:&lt;/P&gt;

&lt;P&gt;This performance drop for 1st iteration may be explained by the initial memory registration. As far as I understand for next iterations you use the same buffer (correct?). If yes you can try to perform malloc/free for each iteration - this should stabilize the performance. Or skip 1st iteration - depending on what you would like to measure (like warm up iterations).&lt;/P&gt;

&lt;P&gt;Problem 2:&lt;/P&gt;

&lt;P&gt;Make sure that 'max locked memory' is set to 'unlimited' for the root account too - as far as I know some scif related kernel modules should be initialized with unlimited 'max locked memory'. If not done, host reboot may be required.&lt;/P&gt;

&lt;P&gt;Additional question is about:&lt;/P&gt;

&lt;BLOCKQUOTE&gt;
	&lt;P&gt;export I_MPI_DAPL_DIRECT_COPY_THRESHOLD=1&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;

&lt;P&gt;Why do you use it? As far as I know it may significantly affect the performance.&lt;/P&gt;</description>
    <pubDate>Fri, 25 Sep 2015 11:21:28 GMT</pubDate>
    <dc:creator>Artem_R_Intel1</dc:creator>
    <dc:date>2015-09-25T11:21:28Z</dc:date>
    <item>
      <title>host-device bandwidth problem</title>
      <link>https://community.intel.com/t5/Software-Archive/host-device-bandwidth-problem/m-p/1042905#M46738</link>
      <description>&lt;P&gt;Dear forum,&lt;/P&gt;

&lt;P&gt;I'm testing the host-device bandwidth using dapl fabric and Intel MPI (Isend/Irecv/Wait). 1.5 GB data are repeatedly sent back and forth. The initial result is:&lt;/P&gt;

&lt;PRE class="brush:;"&gt;host to device: ~5.6 GB/sec
device to host: ~5.8 GB/sec&lt;/PRE&gt;

&lt;P&gt;&lt;STRONG&gt;Problem 1&lt;/STRONG&gt;: The first send-receive appears to be extremely slow. Its bandwidth is:&lt;/P&gt;

&lt;PRE class="brush:;"&gt;host to device: ~2.6 GB/sec
device to host: ~2.5 GB/sec&lt;/PRE&gt;

&lt;P&gt;I immediately thought of Linux' deferred memory allocation Jim pointed out in &lt;A href="https://software.intel.com/en-us/forums/intel-many-integrated-core/topic/564318"&gt;this post&lt;/A&gt;, so I memset the array prior to send/receive, but of little avail. So...is it because of the overhead of Intel MPI's first send/receive?&lt;/P&gt;

&lt;P&gt;&lt;STRONG&gt;Problem 2&lt;/STRONG&gt;: When I increased the data size to 2 GB, the following message was displayed:&lt;/P&gt;

&lt;PRE class="brush:;"&gt;[mic_name]:SCM:3be5:19664b40: 9659192 us(9659192 us!!!):  DAPL ERR reg_mr Cannot allocate memory&lt;/PRE&gt;

&lt;P&gt;The program can complete without a problem, though. So what causes that error message?&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;Thanks for any advice.&lt;/P&gt;</description>
      <pubDate>Wed, 23 Sep 2015 19:33:10 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/host-device-bandwidth-problem/m-p/1042905#M46738</guid>
      <dc:creator>King_Crimson</dc:creator>
      <dc:date>2015-09-23T19:33:10Z</dc:date>
    </item>
    <item>
      <title>Hello,</title>
      <link>https://community.intel.com/t5/Software-Archive/host-device-bandwidth-problem/m-p/1042906#M46739</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;

&lt;P&gt;Which version of Intel MPI Library do you use? Do you use any specific MPI environment variables?&lt;/P&gt;

&lt;P&gt;Regarding to the 2nd problem I'd recommend to check system limits ('max locked memory' parameter) both on host and MIC ('ulimit -l'). If not yet done try to set it to 'unlimited' ('ulimit -l unlimited').&lt;/P&gt;

&lt;P&gt;Just in case, also please specify OS/MPSS/OFED/DAPL versions you use.&lt;/P&gt;</description>
      <pubDate>Thu, 24 Sep 2015 07:09:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/host-device-bandwidth-problem/m-p/1042906#M46739</guid>
      <dc:creator>Artem_R_Intel1</dc:creator>
      <dc:date>2015-09-24T07:09:13Z</dc:date>
    </item>
    <item>
      <title>Hi Artem,</title>
      <link>https://community.intel.com/t5/Software-Archive/host-device-bandwidth-problem/m-p/1042907#M46740</link>
      <description>&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;Hi Artem,&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;Thanks for your reply.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 16.26px; line-height: 22.1727px;"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;Artem R. (Intel) wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;Which version of Intel MPI Library do you use? Do you use any specific MPI environment variables?&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 16.26px; line-height: 22.1727px;"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;The version I'm using is&amp;nbsp;5.1.0.079&lt;/P&gt;

&lt;P&gt;All the env vars are:&lt;/P&gt;

&lt;PRE class="brush:bash;"&gt;export I_MPI_DEBUG=7
export I_MPI_MIC=on
export I_MPI_FABRICS=dapl
export I_MPI_DAPL_PROVIDER=ofa-v2-scif0
export I_MPI_DAPL_DIRECT_COPY_THRESHOLD=1
export KMP_AFFINITY=granularity=fine,balanced&lt;/PRE&gt;

&lt;P&gt;&lt;SPAN style="font-size: 16.26px; line-height: 22.1727px;"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;Artem R. (Intel) wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;Regarding to the 2nd problem I'd recommend to check system limits ('max locked memory' parameter) both on host and MIC ('ulimit -l'). If not yet done try to set it to 'unlimited' ('ulimit -l unlimited').&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 16.26px; line-height: 22.1727px;"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;Both the locked memory has been set to unlimited on the host and MIC prior to the test. Another symptom: When this error message occurs, the bandwidth is sharply reduced to ~1.3 GB.&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 16.26px; line-height: 22.1727px;"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;Artem R. (Intel) wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;Just in case, also please specify OS/MPSS/OFED/DAPL versions you use.&lt;/P&gt;

&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;OS: Scientific Linux 6.3, kernel&amp;nbsp;2.6.32-431.11.2.el6.x86_64&lt;/P&gt;

&lt;P&gt;MPSS:&amp;nbsp;3.5.1&lt;/P&gt;

&lt;P&gt;OFED:&amp;nbsp;OFED-3.5-2-MIC&lt;/P&gt;

&lt;P&gt;DAPL:&amp;nbsp;2.1.2-1&lt;/P&gt;</description>
      <pubDate>Thu, 24 Sep 2015 15:03:53 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/host-device-bandwidth-problem/m-p/1042907#M46740</guid>
      <dc:creator>King_Crimson</dc:creator>
      <dc:date>2015-09-24T15:03:53Z</dc:date>
    </item>
    <item>
      <title>Hi,</title>
      <link>https://community.intel.com/t5/Software-Archive/host-device-bandwidth-problem/m-p/1042908#M46741</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;

&lt;P&gt;Problem 1:&lt;/P&gt;

&lt;P&gt;This performance drop for 1st iteration may be explained by the initial memory registration. As far as I understand for next iterations you use the same buffer (correct?). If yes you can try to perform malloc/free for each iteration - this should stabilize the performance. Or skip 1st iteration - depending on what you would like to measure (like warm up iterations).&lt;/P&gt;

&lt;P&gt;Problem 2:&lt;/P&gt;

&lt;P&gt;Make sure that 'max locked memory' is set to 'unlimited' for the root account too - as far as I know some scif related kernel modules should be initialized with unlimited 'max locked memory'. If not done, host reboot may be required.&lt;/P&gt;

&lt;P&gt;Additional question is about:&lt;/P&gt;

&lt;BLOCKQUOTE&gt;
	&lt;P&gt;export I_MPI_DAPL_DIRECT_COPY_THRESHOLD=1&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;

&lt;P&gt;Why do you use it? As far as I know it may significantly affect the performance.&lt;/P&gt;</description>
      <pubDate>Fri, 25 Sep 2015 11:21:28 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/host-device-bandwidth-problem/m-p/1042908#M46741</guid>
      <dc:creator>Artem_R_Intel1</dc:creator>
      <dc:date>2015-09-25T11:21:28Z</dc:date>
    </item>
    <item>
      <title>Hi Artem,</title>
      <link>https://community.intel.com/t5/Software-Archive/host-device-bandwidth-problem/m-p/1042909#M46742</link>
      <description>&lt;P&gt;Hi Artem,&lt;/P&gt;

&lt;P&gt;Thanks again.&lt;/P&gt;

&lt;P&gt;I set it to a low value because I would like to avoid eager protocol and ensure direct copy without buffering. I guess it should be set to a higher value if the message involved was smaller.&lt;/P&gt;</description>
      <pubDate>Fri, 25 Sep 2015 12:47:42 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/host-device-bandwidth-problem/m-p/1042909#M46742</guid>
      <dc:creator>King_Crimson</dc:creator>
      <dc:date>2015-09-25T12:47:42Z</dc:date>
    </item>
  </channel>
</rss>

