<?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 Problem calling MPI with GPU arrays (use_device_ptr, use_device_addr) in Intel® MPI Library</title>
    <link>https://community.intel.com/t5/Intel-MPI-Library/Problem-calling-MPI-with-GPU-arrays-use-device-ptr-use-device/m-p/1647455#M11990</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am trying to compile and run our code (github.com/predsci/pot3d) on Stampede3 on the MAX 1550 GPUs.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The code uses "GPU-aware" MPI calls using OpenMP target's "use_device_ptr()".&lt;/P&gt;&lt;P&gt;(This works with the NVIDIA compiler with the HPC-X MPI library across NVIDA GPUs).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;On the Intel GPUs, I am getting a seg fault at the MPI calls.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The compiler mentions that the "use_device_ptr()" can only be used with C pointers in Fortran, so I switched them to "use_device_addr()", but that also seg faults.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Are GPU-aware MPI calls supported in ifx+impi (I am using 2025.0.0)?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If so, what do I need to do to get it to work?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Can you clarify the difference between use_device_ptr() and use_device_addr()?&lt;/P&gt;&lt;P&gt;From here, it seems the difference is not clear?&lt;/P&gt;&lt;P&gt;&lt;A href="https://forums.developer.nvidia.com/t/omp-target-data-use-device-ptr-vs-use-device-addr/290317" target="_blank" rel="noopener"&gt;https://forums.developer.nvidia.com/t/omp-target-data-use-device-ptr-vs-use-device-addr/290317&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;- Ron&lt;/P&gt;</description>
    <pubDate>Thu, 05 Dec 2024 04:59:29 GMT</pubDate>
    <dc:creator>caplanr</dc:creator>
    <dc:date>2024-12-05T04:59:29Z</dc:date>
    <item>
      <title>Problem calling MPI with GPU arrays (use_device_ptr, use_device_addr)</title>
      <link>https://community.intel.com/t5/Intel-MPI-Library/Problem-calling-MPI-with-GPU-arrays-use-device-ptr-use-device/m-p/1647455#M11990</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am trying to compile and run our code (github.com/predsci/pot3d) on Stampede3 on the MAX 1550 GPUs.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The code uses "GPU-aware" MPI calls using OpenMP target's "use_device_ptr()".&lt;/P&gt;&lt;P&gt;(This works with the NVIDIA compiler with the HPC-X MPI library across NVIDA GPUs).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;On the Intel GPUs, I am getting a seg fault at the MPI calls.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The compiler mentions that the "use_device_ptr()" can only be used with C pointers in Fortran, so I switched them to "use_device_addr()", but that also seg faults.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Are GPU-aware MPI calls supported in ifx+impi (I am using 2025.0.0)?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If so, what do I need to do to get it to work?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Can you clarify the difference between use_device_ptr() and use_device_addr()?&lt;/P&gt;&lt;P&gt;From here, it seems the difference is not clear?&lt;/P&gt;&lt;P&gt;&lt;A href="https://forums.developer.nvidia.com/t/omp-target-data-use-device-ptr-vs-use-device-addr/290317" target="_blank" rel="noopener"&gt;https://forums.developer.nvidia.com/t/omp-target-data-use-device-ptr-vs-use-device-addr/290317&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;- Ron&lt;/P&gt;</description>
      <pubDate>Thu, 05 Dec 2024 04:59:29 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-MPI-Library/Problem-calling-MPI-with-GPU-arrays-use-device-ptr-use-device/m-p/1647455#M11990</guid>
      <dc:creator>caplanr</dc:creator>
      <dc:date>2024-12-05T04:59:29Z</dc:date>
    </item>
    <item>
      <title>Re: Problem calling MPI with GPU arrays (use_device_ptr, use_device_addr)</title>
      <link>https://community.intel.com/t5/Intel-MPI-Library/Problem-calling-MPI-with-GPU-arrays-use-device-ptr-use-device/m-p/1648184#M11995</link>
      <description>&lt;P&gt;&lt;a href="https://community.intel.com/t5/user/viewprofilepage/user-id/265235"&gt;@caplanr&lt;/a&gt;&amp;nbsp;when passing GPU pointer to Intel MPI you have to set &lt;BR /&gt;export I_MPI_OFFLOAD=1&lt;BR /&gt;before running the application&lt;/P&gt;</description>
      <pubDate>Mon, 09 Dec 2024 09:03:50 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-MPI-Library/Problem-calling-MPI-with-GPU-arrays-use-device-ptr-use-device/m-p/1648184#M11995</guid>
      <dc:creator>TobiasK</dc:creator>
      <dc:date>2024-12-09T09:03:50Z</dc:date>
    </item>
    <item>
      <title>Re: Problem calling MPI with GPU arrays (use_device_ptr, use_device_addr)</title>
      <link>https://community.intel.com/t5/Intel-MPI-Library/Problem-calling-MPI-with-GPU-arrays-use-device-ptr-use-device/m-p/1648330#M11997</link>
      <description>&lt;P&gt;Thanks!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It is now working!&lt;/P&gt;&lt;P&gt;Another tip for someone with the same issue:&lt;/P&gt;&lt;P&gt;I also had to set:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;FONT face="courier new,courier"&gt;export LIBOMPTARGET_DEVICES=SUBDEVICE&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;in order for the MPI to see all 8 tiles of the 4 MAX 1550 GPUs.&lt;/P&gt;&lt;P&gt;The default was only seeing 1 GPU device (on Stampede3).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;- Ron&lt;/P&gt;</description>
      <pubDate>Mon, 09 Dec 2024 22:15:48 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-MPI-Library/Problem-calling-MPI-with-GPU-arrays-use-device-ptr-use-device/m-p/1648330#M11997</guid>
      <dc:creator>caplanr</dc:creator>
      <dc:date>2024-12-09T22:15:48Z</dc:date>
    </item>
  </channel>
</rss>

