Selaa lähdekoodia

Improve the PCI topology

Samuel Thibault 10 vuotta sitten
vanhempi
commit
1070f75a6d

+ 194 - 46
tools/perfmodels/sampling/bus/attila.platform.xml

@@ -21,66 +21,214 @@
    <host id='CPU10' power='2000000000'/>
    <host id='CPU11' power='2000000000'/>
    <host id='CUDA0' power='2000000000'>
-    <prop id='memsize' value='3220897792'/>
-    <prop id='memcpy_peer' value='1'/>
+     <prop id='memsize' value='3220897792'/>
+     <prop id='memcpy_peer' value='1'/>
    </host>
    <host id='CUDA1' power='2000000000'>
-    <prop id='memsize' value='3220897792'/>
-    <prop id='memcpy_peer' value='1'/>
+     <prop id='memsize' value='3220897792'/>
+     <prop id='memcpy_peer' value='1'/>
    </host>
    <host id='CUDA2' power='2000000000'>
-    <prop id='memsize' value='3220897792'/>
-    <prop id='memcpy_peer' value='1'/>
+     <prop id='memsize' value='3220897792'/>
+     <prop id='memcpy_peer' value='1'/>
    </host>
    <host id='OpenCL0' power='2000000000'>
-    <prop id='memsize' value='3220897792'/>
+     <prop id='memsize' value='3220897792'/>
    </host>
    <host id='OpenCL1' power='2000000000'>
-    <prop id='memsize' value='3220897792'/>
+     <prop id='memsize' value='3220897792'/>
    </host>
    <host id='OpenCL2' power='2000000000'>
-    <prop id='memsize' value='3220897792'/>
+     <prop id='memsize' value='3220897792'/>
    </host>
 
    <host id='RAM' power='1'/>
 
-   <link id='Share' bandwidth='6526729932.096614' latency='0.000000'/>
+   <link id='Host' bandwidth='6526732233.112210' latency='0.000000'/>
 
-   <link id='RAM-CUDA0' bandwidth='6008942513.383119' latency='0.000010'/>
-   <link id='CUDA0-RAM' bandwidth='6526606701.196361' latency='0.000010'/>
-   <link id='RAM-CUDA1' bandwidth='6015054829.140775' latency='0.000009'/>
-   <link id='CUDA1-RAM' bandwidth='6526729932.096614' latency='0.000010'/>
-   <link id='RAM-CUDA2' bandwidth='5191265149.184934' latency='0.000010'/>
-   <link id='CUDA2-RAM' bandwidth='4533335723.265609' latency='0.000011'/>
-   <link id='CUDA0-CUDA1' bandwidth='5296854370.572212' latency='0.000015'/>
-   <link id='CUDA0-CUDA2' bandwidth='3827552061.848349' latency='0.000025'/>
-   <link id='CUDA1-CUDA0' bandwidth='5297158728.449829' latency='0.000014'/>
-   <link id='CUDA1-CUDA2' bandwidth='3836700007.096210' latency='0.000025'/>
-   <link id='CUDA2-CUDA0' bandwidth='3081579529.332762' latency='0.000023'/>
-   <link id='CUDA2-CUDA1' bandwidth='3082603073.638482' latency='0.000023'/>
-   <link id='RAM-OpenCL0' bandwidth='3549286896.596828' latency='0.000010'/>
-   <link id='OpenCL0-RAM' bandwidth='3931561373.947795' latency='0.000014'/>
-   <link id='RAM-OpenCL1' bandwidth='4151586883.287012' latency='0.000010'/>
-   <link id='OpenCL1-RAM' bandwidth='4431559719.037102' latency='0.000014'/>
-   <link id='RAM-OpenCL2' bandwidth='4150380414.638037' latency='0.000010'/>
-   <link id='OpenCL2-RAM' bandwidth='4121971522.954313' latency='0.000015'/>
-   <route src='RAM' dst='CUDA0' symmetrical='NO'><link_ctn id='RAM-CUDA0'/><link_ctn id='Share'/></route>
-   <route src='CUDA0' dst='RAM' symmetrical='NO'><link_ctn id='CUDA0-RAM'/><link_ctn id='Share'/></route>
-   <route src='RAM' dst='CUDA1' symmetrical='NO'><link_ctn id='RAM-CUDA1'/><link_ctn id='Share'/></route>
-   <route src='CUDA1' dst='RAM' symmetrical='NO'><link_ctn id='CUDA1-RAM'/><link_ctn id='Share'/></route>
-   <route src='RAM' dst='CUDA2' symmetrical='NO'><link_ctn id='RAM-CUDA2'/><link_ctn id='Share'/></route>
-   <route src='CUDA2' dst='RAM' symmetrical='NO'><link_ctn id='CUDA2-RAM'/><link_ctn id='Share'/></route>
-   <route src='CUDA0' dst='CUDA1' symmetrical='NO'><link_ctn id='CUDA0-CUDA1'/><link_ctn id='Share'/></route>
-   <route src='CUDA0' dst='CUDA2' symmetrical='NO'><link_ctn id='CUDA0-CUDA2'/><link_ctn id='Share'/></route>
-   <route src='CUDA1' dst='CUDA0' symmetrical='NO'><link_ctn id='CUDA1-CUDA0'/><link_ctn id='Share'/></route>
-   <route src='CUDA1' dst='CUDA2' symmetrical='NO'><link_ctn id='CUDA1-CUDA2'/><link_ctn id='Share'/></route>
-   <route src='CUDA2' dst='CUDA0' symmetrical='NO'><link_ctn id='CUDA2-CUDA0'/><link_ctn id='Share'/></route>
-   <route src='CUDA2' dst='CUDA1' symmetrical='NO'><link_ctn id='CUDA2-CUDA1'/><link_ctn id='Share'/></route>
-   <route src='RAM' dst='OpenCL0' symmetrical='NO'><link_ctn id='RAM-OpenCL0'/><link_ctn id='Share'/></route>
-   <route src='OpenCL0' dst='RAM' symmetrical='NO'><link_ctn id='OpenCL0-RAM'/><link_ctn id='Share'/></route>
-   <route src='RAM' dst='OpenCL1' symmetrical='NO'><link_ctn id='RAM-OpenCL1'/><link_ctn id='Share'/></route>
-   <route src='OpenCL1' dst='RAM' symmetrical='NO'><link_ctn id='OpenCL1-RAM'/><link_ctn id='Share'/></route>
-   <route src='RAM' dst='OpenCL2' symmetrical='NO'><link_ctn id='RAM-OpenCL2'/><link_ctn id='Share'/></route>
-   <route src='OpenCL2' dst='RAM' symmetrical='NO'><link_ctn id='OpenCL2-RAM'/><link_ctn id='Share'/></route>
+   <link id='RAM-OpenCL0' bandwidth='4162285174.177163' latency='0.000010'/>
+   <link id='OpenCL0-RAM' bandwidth='4459645563.963992' latency='0.000014'/>
+   <link id='RAM-OpenCL1' bandwidth='3828575609.690533' latency='0.000010'/>
+   <link id='OpenCL1-RAM' bandwidth='3420625686.373279' latency='0.000014'/>
+   <link id='RAM-OpenCL2' bandwidth='3867164138.727851' latency='0.000010'/>
+   <link id='OpenCL2-RAM' bandwidth='3873346625.166936' latency='0.000015'/>
+
+   <link id='RAM-CUDA0' bandwidth='6008661719.001335' latency='0.000009'/>
+   <link id='CUDA0-RAM' bandwidth='6526024509.281727' latency='0.000010'/>
+   <link id='RAM-CUDA1' bandwidth='6001134065.085753' latency='0.000009'/>
+   <link id='CUDA1-RAM' bandwidth='6526732233.112210' latency='0.000010'/>
+   <link id='RAM-CUDA2' bandwidth='5231971524.585075' latency='0.000010'/>
+   <link id='CUDA2-RAM' bandwidth='4519044753.742499' latency='0.000011'/>
+
+   <link id='CUDA0-CUDA1' bandwidth='5296862725.591065' latency='0.000015'/>
+   <link id='CUDA0-CUDA2' bandwidth='3792200896.189628' latency='0.000025'/>
+   <link id='CUDA1-CUDA0' bandwidth='5297288565.963223' latency='0.000014'/>
+   <link id='CUDA1-CUDA2' bandwidth='3800896492.025119' latency='0.000024'/>
+   <link id='CUDA2-CUDA0' bandwidth='3068730935.113825' latency='0.000023'/>
+   <link id='CUDA2-CUDA1' bandwidth='3067648325.986417' latency='0.000023'/>
+
+   <link id='PCI:0000:[00-07] up' bandwidth='6526732233.112210' latency='0.000000'/>
+   <link id='PCI:0000:[00-07] down' bandwidth='6008661719.001335' latency='0.000000'/>
+   <link id='PCI:0000:[00-07] through' bandwidth='13053464466.224421' latency='0.000000'/>
+   <link id='PCI:0000:[02-02] up' bandwidth='6526024509.281727' latency='0.000000'/>
+   <link id='PCI:0000:[02-02] down' bandwidth='6008661719.001335' latency='0.000000'/>
+   <link id='PCI:0000:[02-02] through' bandwidth='13052049018.563454' latency='0.000000'/>
+   <link id='PCI:0000:02:00.0 up' bandwidth='6526024509.281727' latency='0.000000'/>
+   <link id='PCI:0000:02:00.0 down' bandwidth='6008661719.001335' latency='0.000000'/>
+   <link id='PCI:0000:[03-03] up' bandwidth='6526732233.112210' latency='0.000000'/>
+   <link id='PCI:0000:[03-03] down' bandwidth='6001134065.085753' latency='0.000000'/>
+   <link id='PCI:0000:[03-03] through' bandwidth='13053464466.224421' latency='0.000000'/>
+   <link id='PCI:0000:03:00.0 up' bandwidth='6526732233.112210' latency='0.000000'/>
+   <link id='PCI:0000:03:00.0 down' bandwidth='6001134065.085753' latency='0.000000'/>
+   <link id='PCI:0000:[80-84] up' bandwidth='4519044753.742499' latency='0.000000'/>
+   <link id='PCI:0000:[80-84] down' bandwidth='5231971524.585075' latency='0.000000'/>
+   <link id='PCI:0000:[80-84] through' bandwidth='10463943049.170151' latency='0.000000'/>
+   <link id='PCI:0000:[84-84] up' bandwidth='4519044753.742499' latency='0.000000'/>
+   <link id='PCI:0000:[84-84] down' bandwidth='5231971524.585075' latency='0.000000'/>
+   <link id='PCI:0000:[84-84] through' bandwidth='10463943049.170151' latency='0.000000'/>
+   <link id='PCI:0000:84:00.0 up' bandwidth='4519044753.742499' latency='0.000000'/>
+   <link id='PCI:0000:84:00.0 down' bandwidth='5231971524.585075' latency='0.000000'/>
+
+   <route src='CUDA0' dst='CUDA1' symmetrical='NO'>
+    <link_ctn id='CUDA0-CUDA1'/>
+    <link_ctn id='PCI:0000:03:00.0 down'/>
+    <link_ctn id='PCI:0000:[03-03] through'/>
+    <link_ctn id='PCI:0000:[03-03] down'/>
+    <link_ctn id='PCI:0000:[00-07] through'/>
+    <link_ctn id='PCI:0000:[02-02] up'/>
+    <link_ctn id='PCI:0000:[02-02] through'/>
+    <link_ctn id='PCI:0000:02:00.0 up'/>
+   </route>
+   <route src='CUDA0' dst='CUDA2' symmetrical='NO'>
+    <link_ctn id='CUDA0-CUDA2'/>
+    <link_ctn id='PCI:0000:84:00.0 down'/>
+    <link_ctn id='PCI:0000:[84-84] through'/>
+    <link_ctn id='PCI:0000:[84-84] down'/>
+    <link_ctn id='PCI:0000:[80-84] through'/>
+    <link_ctn id='PCI:0000:[80-84] down'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='PCI:0000:[00-07] up'/>
+    <link_ctn id='PCI:0000:[00-07] through'/>
+    <link_ctn id='PCI:0000:[02-02] up'/>
+    <link_ctn id='PCI:0000:[02-02] through'/>
+    <link_ctn id='PCI:0000:02:00.0 up'/>
+   </route>
+   <route src='CUDA0' dst='RAM' symmetrical='NO'>
+    <link_ctn id='CUDA0-RAM'/>
+    <link_ctn id='PCI:0000:02:00.0 up'/>
+    <link_ctn id='PCI:0000:[02-02] through'/>
+    <link_ctn id='PCI:0000:[02-02] up'/>
+    <link_ctn id='PCI:0000:[00-07] through'/>
+    <link_ctn id='PCI:0000:[00-07] up'/>
+    <link_ctn id='Host'/>
+   </route>
+   <route src='RAM' dst='CUDA0' symmetrical='NO'>
+    <link_ctn id='RAM-CUDA0'/>
+    <link_ctn id='PCI:0000:02:00.0 down'/>
+    <link_ctn id='PCI:0000:[02-02] through'/>
+    <link_ctn id='PCI:0000:[02-02] down'/>
+    <link_ctn id='PCI:0000:[00-07] through'/>
+    <link_ctn id='PCI:0000:[00-07] down'/>
+    <link_ctn id='Host'/>
+   </route>
+   <route src='CUDA1' dst='CUDA0' symmetrical='NO'>
+    <link_ctn id='CUDA1-CUDA0'/>
+    <link_ctn id='PCI:0000:02:00.0 down'/>
+    <link_ctn id='PCI:0000:[02-02] through'/>
+    <link_ctn id='PCI:0000:[02-02] down'/>
+    <link_ctn id='PCI:0000:[00-07] through'/>
+    <link_ctn id='PCI:0000:[03-03] up'/>
+    <link_ctn id='PCI:0000:[03-03] through'/>
+    <link_ctn id='PCI:0000:03:00.0 up'/>
+   </route>
+   <route src='CUDA1' dst='CUDA2' symmetrical='NO'>
+    <link_ctn id='CUDA1-CUDA2'/>
+    <link_ctn id='PCI:0000:84:00.0 down'/>
+    <link_ctn id='PCI:0000:[84-84] through'/>
+    <link_ctn id='PCI:0000:[84-84] down'/>
+    <link_ctn id='PCI:0000:[80-84] through'/>
+    <link_ctn id='PCI:0000:[80-84] down'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='PCI:0000:[00-07] up'/>
+    <link_ctn id='PCI:0000:[00-07] through'/>
+    <link_ctn id='PCI:0000:[03-03] up'/>
+    <link_ctn id='PCI:0000:[03-03] through'/>
+    <link_ctn id='PCI:0000:03:00.0 up'/>
+   </route>
+   <route src='CUDA1' dst='RAM' symmetrical='NO'>
+    <link_ctn id='CUDA1-RAM'/>
+    <link_ctn id='PCI:0000:03:00.0 up'/>
+    <link_ctn id='PCI:0000:[03-03] through'/>
+    <link_ctn id='PCI:0000:[03-03] up'/>
+    <link_ctn id='PCI:0000:[00-07] through'/>
+    <link_ctn id='PCI:0000:[00-07] up'/>
+    <link_ctn id='Host'/>
+   </route>
+   <route src='RAM' dst='CUDA1' symmetrical='NO'>
+    <link_ctn id='RAM-CUDA1'/>
+    <link_ctn id='PCI:0000:03:00.0 down'/>
+    <link_ctn id='PCI:0000:[03-03] through'/>
+    <link_ctn id='PCI:0000:[03-03] down'/>
+    <link_ctn id='PCI:0000:[00-07] through'/>
+    <link_ctn id='PCI:0000:[00-07] down'/>
+    <link_ctn id='Host'/>
+   </route>
+   <route src='CUDA2' dst='CUDA0' symmetrical='NO'>
+    <link_ctn id='CUDA2-CUDA0'/>
+    <link_ctn id='PCI:0000:02:00.0 down'/>
+    <link_ctn id='PCI:0000:[02-02] through'/>
+    <link_ctn id='PCI:0000:[02-02] down'/>
+    <link_ctn id='PCI:0000:[00-07] through'/>
+    <link_ctn id='PCI:0000:[00-07] down'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='PCI:0000:[80-84] up'/>
+    <link_ctn id='PCI:0000:[80-84] through'/>
+    <link_ctn id='PCI:0000:[84-84] up'/>
+    <link_ctn id='PCI:0000:[84-84] through'/>
+    <link_ctn id='PCI:0000:84:00.0 up'/>
+   </route>
+   <route src='CUDA2' dst='CUDA1' symmetrical='NO'>
+    <link_ctn id='CUDA2-CUDA1'/>
+    <link_ctn id='PCI:0000:03:00.0 down'/>
+    <link_ctn id='PCI:0000:[03-03] through'/>
+    <link_ctn id='PCI:0000:[03-03] down'/>
+    <link_ctn id='PCI:0000:[00-07] through'/>
+    <link_ctn id='PCI:0000:[00-07] down'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='PCI:0000:[80-84] up'/>
+    <link_ctn id='PCI:0000:[80-84] through'/>
+    <link_ctn id='PCI:0000:[84-84] up'/>
+    <link_ctn id='PCI:0000:[84-84] through'/>
+    <link_ctn id='PCI:0000:84:00.0 up'/>
+   </route>
+   <route src='CUDA2' dst='RAM' symmetrical='NO'>
+    <link_ctn id='CUDA2-RAM'/>
+    <link_ctn id='PCI:0000:84:00.0 up'/>
+    <link_ctn id='PCI:0000:[84-84] through'/>
+    <link_ctn id='PCI:0000:[84-84] up'/>
+    <link_ctn id='PCI:0000:[80-84] through'/>
+    <link_ctn id='PCI:0000:[80-84] up'/>
+    <link_ctn id='Host'/>
+   </route>
+   <route src='RAM' dst='CUDA2' symmetrical='NO'>
+    <link_ctn id='RAM-CUDA2'/>
+    <link_ctn id='PCI:0000:84:00.0 down'/>
+    <link_ctn id='PCI:0000:[84-84] through'/>
+    <link_ctn id='PCI:0000:[84-84] down'/>
+    <link_ctn id='PCI:0000:[80-84] through'/>
+    <link_ctn id='PCI:0000:[80-84] down'/>
+    <link_ctn id='Host'/>
+   </route>
+
+   <route src='RAM' dst='OpenCL0' symmetrical='NO'><link_ctn id='RAM-OpenCL0'/><link_ctn id='Host'/></route>
+   <route src='OpenCL0' dst='RAM' symmetrical='NO'><link_ctn id='OpenCL0-RAM'/><link_ctn id='Host'/></route>
+   <route src='RAM' dst='OpenCL1' symmetrical='NO'><link_ctn id='RAM-OpenCL1'/><link_ctn id='Host'/></route>
+   <route src='OpenCL1' dst='RAM' symmetrical='NO'><link_ctn id='OpenCL1-RAM'/><link_ctn id='Host'/></route>
+   <route src='RAM' dst='OpenCL2' symmetrical='NO'><link_ctn id='RAM-OpenCL2'/><link_ctn id='Host'/></route>
+   <route src='OpenCL2' dst='RAM' symmetrical='NO'><link_ctn id='OpenCL2-RAM'/><link_ctn id='Host'/></route>
  </AS>
  </platform>

+ 194 - 46
tools/perfmodels/sampling/bus/mirage.platform.xml

@@ -21,66 +21,214 @@
    <host id='CPU10' power='2000000000'/>
    <host id='CPU11' power='2000000000'/>
    <host id='CUDA0' power='2000000000'>
-    <prop id='memsize' value='5636554752'/>
-    <prop id='memcpy_peer' value='1'/>
+     <prop id='memsize' value='5636554752'/>
+     <prop id='memcpy_peer' value='1'/>
    </host>
    <host id='CUDA1' power='2000000000'>
-    <prop id='memsize' value='5636554752'/>
-    <prop id='memcpy_peer' value='1'/>
+     <prop id='memsize' value='5636554752'/>
+     <prop id='memcpy_peer' value='1'/>
    </host>
    <host id='CUDA2' power='2000000000'>
-    <prop id='memsize' value='5636554752'/>
-    <prop id='memcpy_peer' value='1'/>
+     <prop id='memsize' value='5636554752'/>
+     <prop id='memcpy_peer' value='1'/>
    </host>
    <host id='OpenCL0' power='2000000000'>
-    <prop id='memsize' value='5636554752'/>
+     <prop id='memsize' value='5636554752'/>
    </host>
    <host id='OpenCL1' power='2000000000'>
-    <prop id='memsize' value='5636554752'/>
+     <prop id='memsize' value='5636554752'/>
    </host>
    <host id='OpenCL2' power='2000000000'>
-    <prop id='memsize' value='5636554752'/>
+     <prop id='memsize' value='5636554752'/>
    </host>
 
    <host id='RAM' power='1'/>
 
-   <link id='Share' bandwidth='6517940403.350740' latency='0.000000'/>
+   <link id='Host' bandwidth='6517450307.894589' latency='0.000000'/>
 
-   <link id='RAM-CUDA0' bandwidth='6030996807.400480' latency='0.000010'/>
-   <link id='CUDA0-RAM' bandwidth='6517591025.627343' latency='0.000011'/>
-   <link id='RAM-CUDA1' bandwidth='6011099701.177908' latency='0.000010'/>
-   <link id='CUDA1-RAM' bandwidth='6517940403.350740' latency='0.000012'/>
-   <link id='RAM-CUDA2' bandwidth='6023264948.963059' latency='0.000010'/>
-   <link id='CUDA2-RAM' bandwidth='6517196550.671501' latency='0.000011'/>
-   <link id='CUDA0-CUDA1' bandwidth='3074666059.801951' latency='0.000024'/>
-   <link id='CUDA0-CUDA2' bandwidth='3073669260.308178' latency='0.000024'/>
-   <link id='CUDA1-CUDA0' bandwidth='3834443071.717256' latency='0.000025'/>
-   <link id='CUDA1-CUDA2' bandwidth='5296205823.267892' latency='0.000017'/>
-   <link id='CUDA2-CUDA0' bandwidth='3831214831.722305' latency='0.000025'/>
-   <link id='CUDA2-CUDA1' bandwidth='5296294944.775122' latency='0.000016'/>
-   <link id='RAM-OpenCL0' bandwidth='4533752864.296706' latency='0.000011'/>
-   <link id='OpenCL0-RAM' bandwidth='4380832064.450601' latency='0.000016'/>
-   <link id='RAM-OpenCL1' bandwidth='4530361671.915980' latency='0.000011'/>
-   <link id='OpenCL1-RAM' bandwidth='4385089407.947115' latency='0.000016'/>
-   <link id='RAM-OpenCL2' bandwidth='4457700382.542517' latency='0.000011'/>
-   <link id='OpenCL2-RAM' bandwidth='4367520334.149920' latency='0.000016'/>
-   <route src='RAM' dst='CUDA0' symmetrical='NO'><link_ctn id='RAM-CUDA0'/><link_ctn id='Share'/></route>
-   <route src='CUDA0' dst='RAM' symmetrical='NO'><link_ctn id='CUDA0-RAM'/><link_ctn id='Share'/></route>
-   <route src='RAM' dst='CUDA1' symmetrical='NO'><link_ctn id='RAM-CUDA1'/><link_ctn id='Share'/></route>
-   <route src='CUDA1' dst='RAM' symmetrical='NO'><link_ctn id='CUDA1-RAM'/><link_ctn id='Share'/></route>
-   <route src='RAM' dst='CUDA2' symmetrical='NO'><link_ctn id='RAM-CUDA2'/><link_ctn id='Share'/></route>
-   <route src='CUDA2' dst='RAM' symmetrical='NO'><link_ctn id='CUDA2-RAM'/><link_ctn id='Share'/></route>
-   <route src='CUDA0' dst='CUDA1' symmetrical='NO'><link_ctn id='CUDA0-CUDA1'/><link_ctn id='Share'/></route>
-   <route src='CUDA0' dst='CUDA2' symmetrical='NO'><link_ctn id='CUDA0-CUDA2'/><link_ctn id='Share'/></route>
-   <route src='CUDA1' dst='CUDA0' symmetrical='NO'><link_ctn id='CUDA1-CUDA0'/><link_ctn id='Share'/></route>
-   <route src='CUDA1' dst='CUDA2' symmetrical='NO'><link_ctn id='CUDA1-CUDA2'/><link_ctn id='Share'/></route>
-   <route src='CUDA2' dst='CUDA0' symmetrical='NO'><link_ctn id='CUDA2-CUDA0'/><link_ctn id='Share'/></route>
-   <route src='CUDA2' dst='CUDA1' symmetrical='NO'><link_ctn id='CUDA2-CUDA1'/><link_ctn id='Share'/></route>
-   <route src='RAM' dst='OpenCL0' symmetrical='NO'><link_ctn id='RAM-OpenCL0'/><link_ctn id='Share'/></route>
-   <route src='OpenCL0' dst='RAM' symmetrical='NO'><link_ctn id='OpenCL0-RAM'/><link_ctn id='Share'/></route>
-   <route src='RAM' dst='OpenCL1' symmetrical='NO'><link_ctn id='RAM-OpenCL1'/><link_ctn id='Share'/></route>
-   <route src='OpenCL1' dst='RAM' symmetrical='NO'><link_ctn id='OpenCL1-RAM'/><link_ctn id='Share'/></route>
-   <route src='RAM' dst='OpenCL2' symmetrical='NO'><link_ctn id='RAM-OpenCL2'/><link_ctn id='Share'/></route>
-   <route src='OpenCL2' dst='RAM' symmetrical='NO'><link_ctn id='OpenCL2-RAM'/><link_ctn id='Share'/></route>
+   <link id='RAM-OpenCL0' bandwidth='4594990014.604123' latency='0.000011'/>
+   <link id='OpenCL0-RAM' bandwidth='4467527948.677606' latency='0.000016'/>
+   <link id='RAM-OpenCL1' bandwidth='4562733739.169294' latency='0.000011'/>
+   <link id='OpenCL1-RAM' bandwidth='4463866496.570195' latency='0.000016'/>
+   <link id='RAM-OpenCL2' bandwidth='4662066166.976132' latency='0.000011'/>
+   <link id='OpenCL2-RAM' bandwidth='4446906801.828301' latency='0.000015'/>
+
+   <link id='RAM-CUDA0' bandwidth='6010679672.232608' latency='0.000010'/>
+   <link id='CUDA0-RAM' bandwidth='6517450307.894588' latency='0.000011'/>
+   <link id='RAM-CUDA1' bandwidth='6010515983.677648' latency='0.000010'/>
+   <link id='CUDA1-RAM' bandwidth='6516266098.599698' latency='0.000011'/>
+   <link id='RAM-CUDA2' bandwidth='6004390320.608641' latency='0.000010'/>
+   <link id='CUDA2-RAM' bandwidth='6517036962.443331' latency='0.000011'/>
+
+   <link id='CUDA0-CUDA1' bandwidth='3078938822.428410' latency='0.000024'/>
+   <link id='CUDA0-CUDA2' bandwidth='3079244316.374852' latency='0.000024'/>
+   <link id='CUDA1-CUDA0' bandwidth='3812979795.084610' latency='0.000025'/>
+   <link id='CUDA1-CUDA2' bandwidth='5296219864.637116' latency='0.000016'/>
+   <link id='CUDA2-CUDA0' bandwidth='3812868043.274849' latency='0.000025'/>
+   <link id='CUDA2-CUDA1' bandwidth='5296218780.510124' latency='0.000016'/>
+
+   <link id='PCI:0000:[00-0f] up' bandwidth='6517450307.894588' latency='0.000000'/>
+   <link id='PCI:0000:[00-0f] down' bandwidth='6010679672.232608' latency='0.000000'/>
+   <link id='PCI:0000:[00-0f] through' bandwidth='13034900615.789177' latency='0.000000'/>
+   <link id='PCI:0000:[06-08] up' bandwidth='6517450307.894588' latency='0.000000'/>
+   <link id='PCI:0000:[06-08] down' bandwidth='6010679672.232608' latency='0.000000'/>
+   <link id='PCI:0000:[06-08] through' bandwidth='13034900615.789177' latency='0.000000'/>
+   <link id='PCI:0000:06:00.0 up' bandwidth='6517450307.894588' latency='0.000000'/>
+   <link id='PCI:0000:06:00.0 down' bandwidth='6010679672.232608' latency='0.000000'/>
+   <link id='PCI:0000:[10-1f] up' bandwidth='6517036962.443331' latency='0.000000'/>
+   <link id='PCI:0000:[10-1f] down' bandwidth='6010515983.677648' latency='0.000000'/>
+   <link id='PCI:0000:[10-1f] through' bandwidth='13034073924.886662' latency='0.000000'/>
+   <link id='PCI:0000:[14-16] up' bandwidth='6516266098.599698' latency='0.000000'/>
+   <link id='PCI:0000:[14-16] down' bandwidth='6010515983.677648' latency='0.000000'/>
+   <link id='PCI:0000:[14-16] through' bandwidth='13032532197.199396' latency='0.000000'/>
+   <link id='PCI:0000:14:00.0 up' bandwidth='6516266098.599698' latency='0.000000'/>
+   <link id='PCI:0000:14:00.0 down' bandwidth='6010515983.677648' latency='0.000000'/>
+   <link id='PCI:0000:[11-13] up' bandwidth='6517036962.443331' latency='0.000000'/>
+   <link id='PCI:0000:[11-13] down' bandwidth='6004390320.608641' latency='0.000000'/>
+   <link id='PCI:0000:[11-13] through' bandwidth='13034073924.886662' latency='0.000000'/>
+   <link id='PCI:0000:11:00.0 up' bandwidth='6517036962.443331' latency='0.000000'/>
+   <link id='PCI:0000:11:00.0 down' bandwidth='6004390320.608641' latency='0.000000'/>
+
+   <route src='CUDA0' dst='CUDA1' symmetrical='NO'>
+    <link_ctn id='CUDA0-CUDA1'/>
+    <link_ctn id='PCI:0000:14:00.0 down'/>
+    <link_ctn id='PCI:0000:[14-16] through'/>
+    <link_ctn id='PCI:0000:[14-16] down'/>
+    <link_ctn id='PCI:0000:[10-1f] through'/>
+    <link_ctn id='PCI:0000:[10-1f] down'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='PCI:0000:[00-0f] up'/>
+    <link_ctn id='PCI:0000:[00-0f] through'/>
+    <link_ctn id='PCI:0000:[06-08] up'/>
+    <link_ctn id='PCI:0000:[06-08] through'/>
+    <link_ctn id='PCI:0000:06:00.0 up'/>
+   </route>
+   <route src='CUDA0' dst='CUDA2' symmetrical='NO'>
+    <link_ctn id='CUDA0-CUDA2'/>
+    <link_ctn id='PCI:0000:11:00.0 down'/>
+    <link_ctn id='PCI:0000:[11-13] through'/>
+    <link_ctn id='PCI:0000:[11-13] down'/>
+    <link_ctn id='PCI:0000:[10-1f] through'/>
+    <link_ctn id='PCI:0000:[10-1f] down'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='PCI:0000:[00-0f] up'/>
+    <link_ctn id='PCI:0000:[00-0f] through'/>
+    <link_ctn id='PCI:0000:[06-08] up'/>
+    <link_ctn id='PCI:0000:[06-08] through'/>
+    <link_ctn id='PCI:0000:06:00.0 up'/>
+   </route>
+   <route src='CUDA0' dst='RAM' symmetrical='NO'>
+    <link_ctn id='CUDA0-RAM'/>
+    <link_ctn id='PCI:0000:06:00.0 up'/>
+    <link_ctn id='PCI:0000:[06-08] through'/>
+    <link_ctn id='PCI:0000:[06-08] up'/>
+    <link_ctn id='PCI:0000:[00-0f] through'/>
+    <link_ctn id='PCI:0000:[00-0f] up'/>
+    <link_ctn id='Host'/>
+   </route>
+   <route src='RAM' dst='CUDA0' symmetrical='NO'>
+    <link_ctn id='RAM-CUDA0'/>
+    <link_ctn id='PCI:0000:06:00.0 down'/>
+    <link_ctn id='PCI:0000:[06-08] through'/>
+    <link_ctn id='PCI:0000:[06-08] down'/>
+    <link_ctn id='PCI:0000:[00-0f] through'/>
+    <link_ctn id='PCI:0000:[00-0f] down'/>
+    <link_ctn id='Host'/>
+   </route>
+   <route src='CUDA1' dst='CUDA0' symmetrical='NO'>
+    <link_ctn id='CUDA1-CUDA0'/>
+    <link_ctn id='PCI:0000:06:00.0 down'/>
+    <link_ctn id='PCI:0000:[06-08] through'/>
+    <link_ctn id='PCI:0000:[06-08] down'/>
+    <link_ctn id='PCI:0000:[00-0f] through'/>
+    <link_ctn id='PCI:0000:[00-0f] down'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='PCI:0000:[10-1f] up'/>
+    <link_ctn id='PCI:0000:[10-1f] through'/>
+    <link_ctn id='PCI:0000:[14-16] up'/>
+    <link_ctn id='PCI:0000:[14-16] through'/>
+    <link_ctn id='PCI:0000:14:00.0 up'/>
+   </route>
+   <route src='CUDA1' dst='CUDA2' symmetrical='NO'>
+    <link_ctn id='CUDA1-CUDA2'/>
+    <link_ctn id='PCI:0000:11:00.0 down'/>
+    <link_ctn id='PCI:0000:[11-13] through'/>
+    <link_ctn id='PCI:0000:[11-13] down'/>
+    <link_ctn id='PCI:0000:[10-1f] through'/>
+    <link_ctn id='PCI:0000:[14-16] up'/>
+    <link_ctn id='PCI:0000:[14-16] through'/>
+    <link_ctn id='PCI:0000:14:00.0 up'/>
+   </route>
+   <route src='CUDA1' dst='RAM' symmetrical='NO'>
+    <link_ctn id='CUDA1-RAM'/>
+    <link_ctn id='PCI:0000:14:00.0 up'/>
+    <link_ctn id='PCI:0000:[14-16] through'/>
+    <link_ctn id='PCI:0000:[14-16] up'/>
+    <link_ctn id='PCI:0000:[10-1f] through'/>
+    <link_ctn id='PCI:0000:[10-1f] up'/>
+    <link_ctn id='Host'/>
+   </route>
+   <route src='RAM' dst='CUDA1' symmetrical='NO'>
+    <link_ctn id='RAM-CUDA1'/>
+    <link_ctn id='PCI:0000:14:00.0 down'/>
+    <link_ctn id='PCI:0000:[14-16] through'/>
+    <link_ctn id='PCI:0000:[14-16] down'/>
+    <link_ctn id='PCI:0000:[10-1f] through'/>
+    <link_ctn id='PCI:0000:[10-1f] down'/>
+    <link_ctn id='Host'/>
+   </route>
+   <route src='CUDA2' dst='CUDA0' symmetrical='NO'>
+    <link_ctn id='CUDA2-CUDA0'/>
+    <link_ctn id='PCI:0000:06:00.0 down'/>
+    <link_ctn id='PCI:0000:[06-08] through'/>
+    <link_ctn id='PCI:0000:[06-08] down'/>
+    <link_ctn id='PCI:0000:[00-0f] through'/>
+    <link_ctn id='PCI:0000:[00-0f] down'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='Host'/>
+    <link_ctn id='PCI:0000:[10-1f] up'/>
+    <link_ctn id='PCI:0000:[10-1f] through'/>
+    <link_ctn id='PCI:0000:[11-13] up'/>
+    <link_ctn id='PCI:0000:[11-13] through'/>
+    <link_ctn id='PCI:0000:11:00.0 up'/>
+   </route>
+   <route src='CUDA2' dst='CUDA1' symmetrical='NO'>
+    <link_ctn id='CUDA2-CUDA1'/>
+    <link_ctn id='PCI:0000:14:00.0 down'/>
+    <link_ctn id='PCI:0000:[14-16] through'/>
+    <link_ctn id='PCI:0000:[14-16] down'/>
+    <link_ctn id='PCI:0000:[10-1f] through'/>
+    <link_ctn id='PCI:0000:[11-13] up'/>
+    <link_ctn id='PCI:0000:[11-13] through'/>
+    <link_ctn id='PCI:0000:11:00.0 up'/>
+   </route>
+   <route src='CUDA2' dst='RAM' symmetrical='NO'>
+    <link_ctn id='CUDA2-RAM'/>
+    <link_ctn id='PCI:0000:11:00.0 up'/>
+    <link_ctn id='PCI:0000:[11-13] through'/>
+    <link_ctn id='PCI:0000:[11-13] up'/>
+    <link_ctn id='PCI:0000:[10-1f] through'/>
+    <link_ctn id='PCI:0000:[10-1f] up'/>
+    <link_ctn id='Host'/>
+   </route>
+   <route src='RAM' dst='CUDA2' symmetrical='NO'>
+    <link_ctn id='RAM-CUDA2'/>
+    <link_ctn id='PCI:0000:11:00.0 down'/>
+    <link_ctn id='PCI:0000:[11-13] through'/>
+    <link_ctn id='PCI:0000:[11-13] down'/>
+    <link_ctn id='PCI:0000:[10-1f] through'/>
+    <link_ctn id='PCI:0000:[10-1f] down'/>
+    <link_ctn id='Host'/>
+   </route>
+
+   <route src='RAM' dst='OpenCL0' symmetrical='NO'><link_ctn id='RAM-OpenCL0'/><link_ctn id='Host'/></route>
+   <route src='OpenCL0' dst='RAM' symmetrical='NO'><link_ctn id='OpenCL0-RAM'/><link_ctn id='Host'/></route>
+   <route src='RAM' dst='OpenCL1' symmetrical='NO'><link_ctn id='RAM-OpenCL1'/><link_ctn id='Host'/></route>
+   <route src='OpenCL1' dst='RAM' symmetrical='NO'><link_ctn id='OpenCL1-RAM'/><link_ctn id='Host'/></route>
+   <route src='RAM' dst='OpenCL2' symmetrical='NO'><link_ctn id='RAM-OpenCL2'/><link_ctn id='Host'/></route>
+   <route src='OpenCL2' dst='RAM' symmetrical='NO'><link_ctn id='OpenCL2-RAM'/><link_ctn id='Host'/></route>
  </AS>
  </platform>