<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <p>My IOMMU grouping of devices change depending on which pci-e
      socket I insert my R9 290 GPU into. For the sake of purchasing a
      new system I wanted to discuss the different groupings so I can
      better choose my new hardware.<br>
    </p>
    <p>Here are the IOMMU group which contain my GPU with the GPU
      inserted into the three different PCIE slots I have (for all
      groups in the different configs see attachments).<br>
    </p>
    <p>#A: GPU in PCIE1<br>
      IOMMU group 1<br>
          00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200
      v3/4th Gen Core Processor PCI Express x16 Controller [8086:0c01]
      (rev 06)<br>
          01:00.0 VGA compatible controller [0300]: Advanced Micro
      Devices, Inc. [AMD/ATI] Hawaii PRO [Radeon R9 290] [1002:67b1]<br>
          01:00.1 Audio device [0403]: Advanced Micro Devices, Inc.
      [AMD/ATI] Hawaii HDMI Audio [1002:aac8]<br>
      <br>
      #B:  GPU in PCIE3<br>
      IOMMU group 1<br>
          00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200
      v3/4th Gen Core Processor PCI Express x16 Controller [8086:0c01]
      (rev 06)<br>
          00:01.1 PCI bridge [0604]: Intel Corporation Xeon E3-1200
      v3/4th Gen Core Processor PCI Express x8 Controller [8086:0c05]
      (rev 06)<br>
          02:00.0 VGA compatible controller [0300]: Advanced Micro
      Devices, Inc. [AMD/ATI] Hawaii PRO [Radeon R9 290] [1002:67b1]<br>
          02:00.1 Audio device [0403]: Advanced Micro Devices, Inc.
      [AMD/ATI] Hawaii HDMI Audio [1002:aac8]<br>
      <br>
      #C:  GPU in PCIE4<br>
      IOMMU group 14<br>
          04:00.0 VGA compatible controller [0300]: Advanced Micro
      Devices, Inc. [AMD/ATI] Hawaii PRO [Radeon R9 290] [1002:67b1]<br>
          04:00.1 Audio device [0403]: Advanced Micro Devices, Inc.
      [AMD/ATI] Hawaii HDMI Audio [1002:aac8]</p>
    <p>I have had success with Arch linux and stock kernel 4.4.1 with
      config #C (GPU in PCIE4), but not the others. Is that to be
      expected without patching the kernel  (i.e. the GPU needs to be in
      a group all by itself)?<br>
    </p>
    <p>Can these groups be figured out without plugging the GPU into the
      different slots and looking at
      <meta http-equiv="content-type" content="text/html; charset=utf-8">
      /sys/kernel/iommu_groups/; deduced from the chip set
      specification, inspecting /sys/ in more clever way, or similar? If
      yes, then it would be great to collect a list of hardware and its
      groupings. That way it would be easier to decide which motherboard
      and cpu to get for different setups.</p>
    <p>/ Jonas<br>
    </p>
    <p><br>
    </p>
    <p><br>
    </p>
    <p>## Details about my system:<br>
      The system is:<br>
       - MB: ASROCK Z87M Extreme 4
      (<a class="moz-txt-link-freetext" href="http://www.asrock.com/mb/Intel/Z87M%20Extreme4/">http://www.asrock.com/mb/Intel/Z87M%20Extreme4/</a>)<br>
       - CPU: i7-4770</p>
    <p>The motherboard has four pci-e sockets, labeled pcie1-4:<br>
      [                 PCIE1                  ]<br>
      [PCIE2]<br>
      [                 PCIE3                  ]<br>
      [                 PCIE4                  ]<br>
    </p>
    <p>It is a good question which is how fast, the manual reads:<br>
    </p>
    - 2 x PCI Express 3.0 x16 slots (PCIE1/PCIE3: single at x16 (PCIE1);
    dual at x8 (PCIE1) / x8 (PCIE3))<br>
    - 1 x PCI Express 2.0 x16 slot (PCIE4: x4 mode)<br>
    - 1 x PCI Express 2.0 x1 slot<br>
    <br>
    <br>
    <br>
    <br>
  </body>
</html>