<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://cmp.wiki/w/index.php?action=history&amp;feed=atom&amp;title=Risers_and_bifurcation</id>
	<title>Risers and bifurcation - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://cmp.wiki/w/index.php?action=history&amp;feed=atom&amp;title=Risers_and_bifurcation"/>
	<link rel="alternate" type="text/html" href="https://cmp.wiki/w/index.php?title=Risers_and_bifurcation&amp;action=history"/>
	<updated>2026-10-31T10:43:39Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>https://cmp.wiki/w/index.php?title=Risers_and_bifurcation&amp;diff=476&amp;oldid=prev</id>
		<title>ImportBot: Link width, riser cables, M.2/OcuLink/SlimSAS adapters, PCIe switches (PEX88096, PEX 8747, PEX9797) and bifurcation for CMP 170HX hosts, from Discord (Mountains, cibernox, segmond, fafinet, endsjeremy, domrockt2, markshowa, OB88594, replacedriver47, peter643, Miséricorde and others), PixelML/club-170hx and @darkmaniac7 (Ivan) lab notes; gap-fill from #general 2026-10-24 to 10-25 (P2P failing behind a PLX 88096), @replacedriver47, @djpandaman, @nathang6866</title>
		<link rel="alternate" type="text/html" href="https://cmp.wiki/w/index.php?title=Risers_and_bifurcation&amp;diff=476&amp;oldid=prev"/>
		<updated>2026-10-30T10:02:35Z</updated>

		<summary type="html">&lt;p&gt;Link width, riser cables, M.2/OcuLink/SlimSAS adapters, PCIe switches (PEX88096, PEX 8747, PEX9797) and bifurcation for CMP 170HX hosts, from Discord (Mountains, cibernox, segmond, fafinet, endsjeremy, domrockt2, markshowa, OB88594, replacedriver47, peter643, Miséricorde and others), PixelML/club-170hx and @darkmaniac7 (Ivan) lab notes; gap-fill from #general 2026-10-24 to 10-25 (P2P failing behind a PLX 88096), @replacedriver47, @djpandaman, @nathang6866&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 10:02, 30 October 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l45&quot;&gt;Line 45:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 45:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;PEX88096&amp;#039;&amp;#039;&amp;#039; (Gen4): one board feeds 5 cards at x16, or 10 at x8. Typical boards take a PCIe x16 host link and use 2x SFF-8654 8i per board. A 6-port version cuts the cost about in half (endsjeremy). {{Source|handle=gnasherrr|date=2026-10-17|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561000198086336665}}&amp;lt;br /&amp;gt;{{Source|handle=wakeupmbrc1|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561404369382023203}}&amp;lt;br /&amp;gt;{{Source|handle=endsjeremy|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562309916864282676}}&amp;lt;br /&amp;gt;{{Source|handle=endsjeremy|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562309959482478667}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;PEX88096&amp;#039;&amp;#039;&amp;#039; (Gen4): one board feeds 5 cards at x16, or 10 at x8. Typical boards take a PCIe x16 host link and use 2x SFF-8654 8i per board. A 6-port version cuts the cost about in half (endsjeremy). {{Source|handle=gnasherrr|date=2026-10-17|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561000198086336665}}&amp;lt;br /&amp;gt;{{Source|handle=wakeupmbrc1|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561404369382023203}}&amp;lt;br /&amp;gt;{{Source|handle=endsjeremy|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562309916864282676}}&amp;lt;br /&amp;gt;{{Source|handle=endsjeremy|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562309959482478667}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;PEX88144 / PEX89144&amp;#039;&amp;#039;&amp;#039;: one board for 8 cards from one root port, but expensive (PEX89144 over 3000 USD) and rare. {{Source|handle=wakeupmbrc1|date=2026-10-17|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561000283566514279}}&amp;lt;br /&amp;gt;{{Source|handle=wakeupmbrc1|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561402969126080597}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;PEX88144 / PEX89144&amp;#039;&amp;#039;&amp;#039;: one board for 8 cards from one root port, but expensive (PEX89144 over 3000 USD) and rare. {{Source|handle=wakeupmbrc1|date=2026-10-17|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561000283566514279}}&amp;lt;br /&amp;gt;{{Source|handle=wakeupmbrc1|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561402969126080597}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;&#039;Cascading:&#039;&#039;&#039; with two PEX88096 boards in two host slots there are 16 lanes left on each switch, so cascade them so DMA reaches all 8 cards (endsjeremy). {{Source|handle=endsjeremy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561403392465707150}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* &#039;&#039;&#039;Gen5 lane counts:&#039;&#039;&#039; among Broadcom&#039;s Gen5 switches only the PEX89144 and PEX89032 have lane counts divisible by 16 (gnasherrr). DaLZy&#039;s guess at the reason: customers wanted to split one x16 into four x16 slots and still attach a NIC or USB controller. {{Source|handle=gnasherrr|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561408742438867125}}&amp;lt;br /&amp;gt;{{Source|handle=dalzyyy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561409384968491009}}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;&#039;Cascading:&#039;&#039;&#039; with two PEX88096 boards in two host slots there are 16 lanes left on each switch, so cascade them so DMA reaches all 8 cards (endsjeremy). &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The alternative he named for 8 cards is a single 10-port switch instead of two. {{Source|handle=endsjeremy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561403167936352439}}&amp;lt;br /&amp;gt;&lt;/ins&gt;{{Source|handle=endsjeremy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561403392465707150}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;3x Gen4 x16 switch cards&amp;#039;&amp;#039;&amp;#039; exist and cost less than the 5x x16 versions. {{Source|handle=gpmickey|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557481786802573433}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;3x Gen4 x16 switch cards&amp;#039;&amp;#039;&amp;#039; exist and cost less than the 5x x16 versions. {{Source|handle=gpmickey|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557481786802573433}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* A Broadcom redriver/retimer board is the other option GlobalApathy knows for adding slots. {{Source|handle=globalapathy|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557486128154550444}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* A Broadcom redriver/retimer board is the other option GlobalApathy knows for adding slots. {{Source|handle=globalapathy|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557486128154550444}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l57&quot;&gt;Line 57:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 58:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;MMIO behind switches:&amp;#039;&amp;#039;&amp;#039; OB88594 says many boards show MMIO problems behind a PLX switch, so only mailbox P2P is usable there, and in tensor parallel that mailbox P2P crashes the inference program with Xid 13. {{Source|handle=ob88594|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1557383845844615241}} Some PLX machines have too little MMIO for the 64 GB BAR, and the Morrowmake P2P mode runs with a 64 MB BAR. {{Source|handle=ob88594|date=2026-10-05|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1556527198540922981}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;MMIO behind switches:&amp;#039;&amp;#039;&amp;#039; OB88594 says many boards show MMIO problems behind a PLX switch, so only mailbox P2P is usable there, and in tensor parallel that mailbox P2P crashes the inference program with Xid 13. {{Source|handle=ob88594|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1557383845844615241}} Some PLX machines have too little MMIO for the 64 GB BAR, and the Morrowmake P2P mode runs with a 64 MB BAR. {{Source|handle=ob88594|date=2026-10-05|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1556527198540922981}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Switch firmware:&amp;#039;&amp;#039;&amp;#039; replacedriver47 found his PEX88096 firmware lacked hotplug, which he says is required to remap BAR addressing behind the switch. {{Source|handle=replacedriver47|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1563580726882861097}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Switch firmware:&amp;#039;&amp;#039;&amp;#039; replacedriver47 found his PEX88096 firmware lacked hotplug, which he says is required to remap BAR addressing behind the switch. {{Source|handle=replacedriver47|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1563580726882861097}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* {{Status|Reported}} &#039;&#039;&#039;P2P never completes behind a PLX 88096, even at 64 GB BAR1.&#039;&#039;&#039; replacedriver47 has four cards behind a PLX 88096 switch. By tuning MMIOH and BAR sizes he got two of them to a 64 GB BAR1 (the MMIOH window is too small for all four at 64 GB), but even between those two, P2P transfers never complete. He had heard Morrowmake&#039;s cmpunlocker makes P2P work; it did not for him, and he wants the root cause before he enlarges MMIOH further. mrpandagod pointed him to PixelML&#039;s [https://github.com/PixelML/club-170hx/blob/main/notebooks/2026-10-01-cmp170hx-4card-bar1-p2p-plx-cuda.ipynb notebook on 4-card BAR1 P2P over PLX with CUDA]. ElectroHobo had P2P working with an older method and thinks Morrowmake&#039;s vLLM fixes it for many people on supported hardware. The root cause is unresolved. See [[P2P]] and [[Minisforum MS-01]]. {{Source|handle=replacedriver47|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563629249502515205}}&amp;lt;br /&amp;gt;{{Source|handle=replacedriver47|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563629333552177284}}&amp;lt;br /&amp;gt;{{Source|handle=replacedriver47|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563629405589475550}}&amp;lt;br /&amp;gt;{{Source|handle=replacedriver47|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563629971082186753}}&amp;lt;br /&amp;gt;{{Source|handle=replacedriver47|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563633438450393259}}&amp;lt;br /&amp;gt;{{Source|handle=djpandaman|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563629622673936384|repo=https://github.com/PixelML/club-170hx}}&amp;lt;br /&amp;gt;{{Source|handle=nathang6866|date=2026-10-25|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1564023832107417662}}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Per-slot bifurcation on a PEX88096&amp;#039;&amp;#039;&amp;#039; needs a custom SBR (switch firmware). The seller alifond reprogrammed the last slot of peter643&amp;#039;s board to 4x x4 before shipping but would not share the image or other custom firmware, citing an NDA; peter643 later worked out how to build his own; an open hardware project page has the procedure and files, and peter643 believes only about 8 bytes change (4 setting bytes and 4 CRC bytes). {{Source|handle=peter643|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557518262659711000}}&amp;lt;br /&amp;gt;{{Source|handle=peter643|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557534181284913273}}&amp;lt;br /&amp;gt;{{Source|handle=peter643|date=2026-10-08|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557765698011402402}}&amp;lt;br /&amp;gt;{{Source|handle=peter643|date=2026-10-08|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557792050739417210}} He prefers the 88096&amp;#039;s own port bifurcation over a second PEX switch, which costs power and about 300 USD but could give 8x x4 NVMe for more random IOPS. {{Source|handle=peter643|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557535072008151174}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Per-slot bifurcation on a PEX88096&amp;#039;&amp;#039;&amp;#039; needs a custom SBR (switch firmware). The seller alifond reprogrammed the last slot of peter643&amp;#039;s board to 4x x4 before shipping but would not share the image or other custom firmware, citing an NDA; peter643 later worked out how to build his own; an open hardware project page has the procedure and files, and peter643 believes only about 8 bytes change (4 setting bytes and 4 CRC bytes). {{Source|handle=peter643|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557518262659711000}}&amp;lt;br /&amp;gt;{{Source|handle=peter643|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557534181284913273}}&amp;lt;br /&amp;gt;{{Source|handle=peter643|date=2026-10-08|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557765698011402402}}&amp;lt;br /&amp;gt;{{Source|handle=peter643|date=2026-10-08|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557792050739417210}} He prefers the 88096&amp;#039;s own port bifurcation over a second PEX switch, which costs power and about 300 USD but could give 8x x4 NVMe for more random IOPS. {{Source|handle=peter643|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557535072008151174}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Five slots, four cards:&amp;#039;&amp;#039;&amp;#039; cibernox&amp;#039;s switch takes 5 cards; he stops at 4 (256 GB) because he does not expect TP to scale well past 4 cards and 320 GB opens few extra models; Sojun agrees 256 GB is a reasonable stopping point. {{Status|Theory}} {{Source|handle=cibernox|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557428289365082245}}&amp;lt;br /&amp;gt;{{Source|handle=sojun80|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557430622245359738}}  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Five slots, four cards:&amp;#039;&amp;#039;&amp;#039; cibernox&amp;#039;s switch takes 5 cards; he stops at 4 (256 GB) because he does not expect TP to scale well past 4 cards and 320 GB opens few extra models; Sojun agrees 256 GB is a reasonable stopping point. {{Status|Theory}} {{Source|handle=cibernox|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557428289365082245}}&amp;lt;br /&amp;gt;{{Source|handle=sojun80|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557430622245359738}}  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key cmp_wiki:diff:1.41:old-361:rev-476:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>ImportBot</name></author>
	</entry>
	<entry>
		<id>https://cmp.wiki/w/index.php?title=Risers_and_bifurcation&amp;diff=361&amp;oldid=prev</id>
		<title>ImportBot: Link width, riser cables, M.2/OcuLink/SlimSAS adapters, PCIe switches (PEX88096, PEX 8747, PEX9797) and bifurcation for CMP 170HX hosts, from Discord (Mountains, cibernox, segmond, fafinet, endsjeremy, domrockt2, markshowa, OB88594, replacedriver47, peter643, Miséricorde and others), PixelML/club-170hx and @darkmaniac7 (Ivan) lab notes</title>
		<link rel="alternate" type="text/html" href="https://cmp.wiki/w/index.php?title=Risers_and_bifurcation&amp;diff=361&amp;oldid=prev"/>
		<updated>2026-10-30T08:47:26Z</updated>

		<summary type="html">&lt;p&gt;Link width, riser cables, M.2/OcuLink/SlimSAS adapters, PCIe switches (PEX88096, PEX 8747, PEX9797) and bifurcation for CMP 170HX hosts, from Discord (Mountains, cibernox, segmond, fafinet, endsjeremy, domrockt2, markshowa, OB88594, replacedriver47, peter643, Miséricorde and others), PixelML/club-170hx and @darkmaniac7 (Ivan) lab notes&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 08:47, 30 October 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l25&quot;&gt;Line 25:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 25:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== M.2, OcuLink and SlimSAS ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== M.2, OcuLink and SlimSAS ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;&#039;M.2 to PCIe x16 extender cables&#039;&#039;&#039; add a card to a consumer board from a free M.2 slot: matstatman suggested an M.2 NVMe to PCIe 3.0 x16 extender (SinLoon); AnalyticETH runs &quot;a bunch of these&quot;. {{Source|handle=matstatman|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557484331193077841}}&amp;lt;br /&amp;gt;{{Source|handle=analyticeth|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557484927375769726}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;&#039;M.2 to PCIe x16 extender cables&#039;&#039;&#039; add a card to a consumer board from a free M.2 slot: matstatman suggested an M.2 NVMe to PCIe 3.0 x16 extender (&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[https://www.amazon.com/dp/B0DQT91C9N &lt;/ins&gt;SinLoon&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;, Amazon B0DQT91C9N]&lt;/ins&gt;); AnalyticETH runs &quot;a bunch of these&quot;. {{Source|handle=matstatman|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557484331193077841}}&amp;lt;br /&amp;gt;{{Source|handle=analyticeth|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557484927375769726}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;OcuLink from M.2:&amp;#039;&amp;#039;&amp;#039; GlobalApathy ran a card over OcuLink from an M.2 adapter on a Dell micro PC into an external GPU frame; it worked but was &amp;quot;a bit flaky&amp;quot;. {{Source|handle=globalapathy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561376002280661025}} gnasherrr runs four cards from a 1-to-4 OcuLink setup while his switch boards ship. {{Source|handle=gnasherrr|date=2026-10-25|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1563736510082064516}} See [[Dell OptiPlex 7040m]].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;OcuLink from M.2:&amp;#039;&amp;#039;&amp;#039; GlobalApathy ran a card over OcuLink from an M.2 adapter on a Dell micro PC into an external GPU frame; it worked but was &amp;quot;a bit flaky&amp;quot;. {{Source|handle=globalapathy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561376002280661025}} gnasherrr runs four cards from a 1-to-4 OcuLink setup while his switch boards ship. {{Source|handle=gnasherrr|date=2026-10-25|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1563736510082064516}} See [[Dell OptiPlex 7040m]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;SlimSAS 8i (SFF-8654)&amp;#039;&amp;#039;&amp;#039; cables with PCIe x16 adapters are a common way to hang cards off server boards and switch boards; PCIe x16 to 2x SlimSAS 8i host adapters cost about the same in the US and EU as in China. {{Source|handle=colo2442|date=2026-10-06|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557026698015277067}}&amp;lt;br /&amp;gt;{{Source|handle=kellertreppe123|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1563568589011947524}} Mountains extended his cards above a regular case on a 2020-extrusion frame with external SlimSAS. {{Source|handle=mountains1605|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562324256296149026}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;SlimSAS 8i (SFF-8654)&amp;#039;&amp;#039;&amp;#039; cables with PCIe x16 adapters are a common way to hang cards off server boards and switch boards; PCIe x16 to 2x SlimSAS 8i host adapters cost about the same in the US and EU as in China. {{Source|handle=colo2442|date=2026-10-06|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557026698015277067}}&amp;lt;br /&amp;gt;{{Source|handle=kellertreppe123|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1563568589011947524}} Mountains extended his cards above a regular case on a 2020-extrusion frame with external SlimSAS. {{Source|handle=mountains1605|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562324256296149026}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l51&quot;&gt;Line 51:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 51:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== What people found ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== What people found ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;&#039;P2P works on a PEX88096 board&#039;&#039;&#039; from Alibaba (&quot;5 GPU Expansion&quot;): domrockt2 got P2P once he fixed a SAS cable in the wrong port, which had left the host link at x8. In hindsight he would buy one with more slots. {{Source|handle=domrockt2|date=2026-10-15|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1560201364552941631}} He runs one on a Z690 with an i5-14600K and recommends a fan on the PLX chip. {{Source|handle=domrockt2|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562908280014110731}}&amp;lt;br /&amp;gt;{{Source|handle=domrockt2|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562913694437081209}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;&#039;P2P works on a PEX88096 board&#039;&#039;&#039; from Alibaba (&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[https://www.alibaba.com/product-detail/In-Stock-PEX88096-5-GPU-Expansion_1601922334996.html &lt;/ins&gt;&quot;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;In Stock PEX88096 &lt;/ins&gt;5 GPU Expansion&quot;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]&lt;/ins&gt;): domrockt2 got P2P once he fixed a SAS cable in the wrong port, which had left the host link at x8. In hindsight he would buy one with more slots. {{Source|handle=domrockt2|date=2026-10-15|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1560201364552941631}} He runs one on a Z690 with an i5-14600K and recommends a fan on the PLX chip. {{Source|handle=domrockt2|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562908280014110731}}&amp;lt;br /&amp;gt;{{Source|handle=domrockt2|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562913694437081209&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* &#039;&#039;&#039;10-port PEX88096 boards from Alibaba:&#039;&#039;&#039; djpandaman uses a 10-port PLX 88096 board with a 2x 8i host connection and says the [https://www.alibaba.com/x/B2bzht?ck=pdp listing hawtt_dawgg found] is the same chip and connection; Mickey bought three boards with cables and riser cards for 1200 CAD (about 850 USD), about 4 kg for the three sets. hawtt_dawgg also spotted a newer [https://www.alibaba.com/product-detail/PEX88096-Switch-Based-4-Slot-PCIe_1601787385297.html &quot;PEX88096 Switch Based 4-Slot PCIe&quot;] listing; Mickey notes 4-slot boards get hard once you want 12 cards at x16 in one server. {{Source|handle=_syn_thetic_|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562896636097593435}}&amp;lt;br /&amp;gt;{{Source|handle=djpandaman|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562897123882573834}}&amp;lt;br /&amp;gt;{{Source|handle=djpandaman|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562897199740882945}}&amp;lt;br /&amp;gt;{{Source|handle=gpmickey|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562944512500834375}}&amp;lt;br /&amp;gt;{{Source|handle=gpmickey|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562945228627775619}}&amp;lt;br /&amp;gt;{{Source|handle=gpmickey|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562945533230714892}}&amp;lt;br /&amp;gt;{{Source|handle=_syn_thetic_|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562946062380179556&lt;/ins&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Static BAR1 P2P on a PEX 8747 host:&amp;#039;&amp;#039;&amp;#039; the PixelML club got 12/12 ordered pairs byte-exact at 5.79 GB/s with four extra patches and a pre-driver BAR placement step adopted via kexec; latency 16 us (4 KiB) and 194 us (1 MiB) vs 22 and 343 us host-staged. P2P helped Qwen3.8-27B TP2 (+11%) but hurt GLM-5.3-Flash TP4 on that Broadwell host (-20 to -26% one user), the opposite of Morrowmake&amp;#039;s EPYC result (+11%). {{Source|handle=djpandaman|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563629622673936384|repo=https://github.com/PixelML/club-170hx}} {{Status|Contested}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Static BAR1 P2P on a PEX 8747 host:&amp;#039;&amp;#039;&amp;#039; the PixelML club got 12/12 ordered pairs byte-exact at 5.79 GB/s with four extra patches and a pre-driver BAR placement step adopted via kexec; latency 16 us (4 KiB) and 194 us (1 MiB) vs 22 and 343 us host-staged. P2P helped Qwen3.8-27B TP2 (+11%) but hurt GLM-5.3-Flash TP4 on that Broadwell host (-20 to -26% one user), the opposite of Morrowmake&amp;#039;s EPYC result (+11%). {{Source|handle=djpandaman|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563629622673936384|repo=https://github.com/PixelML/club-170hx}} {{Status|Contested}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Two cards behind one switch&amp;#039;&amp;#039;&amp;#039; corrupted the kernel resource tree on every boot until the per-card BAR1 resize was serialized (&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;rebar-serialize.patch&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;, same fix as cmpunlocker PR #59). {{Source|handle=djpandaman|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563629622673936384|repo=https://github.com/PixelML/club-170hx}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Two cards behind one switch&amp;#039;&amp;#039;&amp;#039; corrupted the kernel resource tree on every boot until the per-card BAR1 resize was serialized (&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;rebar-serialize.patch&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;, same fix as cmpunlocker PR #59). {{Source|handle=djpandaman|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563629622673936384|repo=https://github.com/PixelML/club-170hx}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;MMIO behind switches:&amp;#039;&amp;#039;&amp;#039; OB88594 says many boards show MMIO problems behind a PLX switch, so only mailbox P2P is usable there, and in tensor parallel that mailbox P2P crashes the inference program with Xid 13. {{Source|handle=ob88594|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1557383845844615241}} Some PLX machines have too little MMIO for the 64 GB BAR, and the Morrowmake P2P mode runs with a 64 MB BAR. {{Source|handle=ob88594|date=2026-10-05|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1556527198540922981}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;MMIO behind switches:&amp;#039;&amp;#039;&amp;#039; OB88594 says many boards show MMIO problems behind a PLX switch, so only mailbox P2P is usable there, and in tensor parallel that mailbox P2P crashes the inference program with Xid 13. {{Source|handle=ob88594|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1557383845844615241}} Some PLX machines have too little MMIO for the 64 GB BAR, and the Morrowmake P2P mode runs with a 64 MB BAR. {{Source|handle=ob88594|date=2026-10-05|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1556527198540922981}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Switch firmware:&amp;#039;&amp;#039;&amp;#039; replacedriver47 found his PEX88096 firmware lacked hotplug, which he says is required to remap BAR addressing behind the switch. {{Source|handle=replacedriver47|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1563580726882861097}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Switch firmware:&amp;#039;&amp;#039;&amp;#039; replacedriver47 found his PEX88096 firmware lacked hotplug, which he says is required to remap BAR addressing behind the switch. {{Source|handle=replacedriver47|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1563580726882861097}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;&#039;Per-slot bifurcation on a PEX88096&#039;&#039;&#039; needs a custom SBR (switch firmware). &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;A &lt;/del&gt;seller &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;preloaded a &lt;/del&gt;4x x4 &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;slot for peter643 &lt;/del&gt;but would not share the image; an open hardware project page has the procedure and files, and peter643 believes only about 8 bytes change (4 setting bytes and 4 CRC bytes). {{Source|handle=peter643|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557534181284913273}}&amp;lt;br /&amp;gt;{{Source|handle=peter643|date=2026-10-08|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557765698011402402}}&amp;lt;br /&amp;gt;{{Source|handle=peter643|date=2026-10-08|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557792050739417210}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;&#039;Per-slot bifurcation on a PEX88096&#039;&#039;&#039; needs a custom SBR (switch firmware). &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The &lt;/ins&gt;seller &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;alifond reprogrammed the last slot of peter643&#039;s board to &lt;/ins&gt;4x x4 &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;before shipping &lt;/ins&gt;but would not share the image &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;or other custom firmware, citing an NDA; peter643 later worked out how to build his own&lt;/ins&gt;; an open hardware project page has the procedure and files, and peter643 believes only about 8 bytes change (4 setting bytes and 4 CRC bytes). &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{Source|handle=peter643|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557518262659711000}}&amp;lt;br /&amp;gt;&lt;/ins&gt;{{Source|handle=peter643|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557534181284913273}}&amp;lt;br /&amp;gt;{{Source|handle=peter643|date=2026-10-08|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557765698011402402}}&amp;lt;br /&amp;gt;{{Source|handle=peter643|date=2026-10-08|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557792050739417210&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}} He prefers the 88096&#039;s own port bifurcation over a second PEX switch, which costs power and about 300 USD but could give 8x x4 NVMe for more random IOPS. {{Source|handle=peter643|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557535072008151174&lt;/ins&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Five slots, four cards:&amp;#039;&amp;#039;&amp;#039; cibernox&amp;#039;s switch takes 5 cards; he stops at 4 (256 GB) because he does not expect TP to scale well past 4 cards and 320 GB opens few extra models; Sojun agrees 256 GB is a reasonable stopping point. {{Status|Theory}} {{Source|handle=cibernox|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557428289365082245}}&amp;lt;br /&amp;gt;{{Source|handle=sojun80|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557430622245359738}}  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Five slots, four cards:&amp;#039;&amp;#039;&amp;#039; cibernox&amp;#039;s switch takes 5 cards; he stops at 4 (256 GB) because he does not expect TP to scale well past 4 cards and 320 GB opens few extra models; Sojun agrees 256 GB is a reasonable stopping point. {{Status|Theory}} {{Source|handle=cibernox|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557428289365082245}}&amp;lt;br /&amp;gt;{{Source|handle=sojun80|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557430622245359738}}  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;GPUDirect Storage across switches:&amp;#039;&amp;#039;&amp;#039; markshowa (2x PEX9797 plus a PLX88048 carrier) finds GDS works and does better inside a switch, but writes across switches are very slow and look serialized; he suspects the same mechanism behind his poor cross-switch P2P. {{Source|handle=markshowa|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562923128500392051}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;GPUDirect Storage across switches:&amp;#039;&amp;#039;&amp;#039; markshowa (2x PEX9797 plus a PLX88048 carrier) finds GDS works and does better inside a switch, but writes across switches are very slow and look serialized; he suspects the same mechanism behind his poor cross-switch P2P. {{Source|handle=markshowa|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562923128500392051}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* {{Status|Warning}} &amp;#039;&amp;#039;&amp;#039;Power:&amp;#039;&amp;#039;&amp;#039; a rig with four cards on one PLX board and two independent PSUs lost all four cards and the PLX board at once under large prompt-processing loads. See [[Cooling and power]]. {{Source|handle=replacedriver47|date=2026-10-05|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1556768826769674351}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* {{Status|Warning}} &amp;#039;&amp;#039;&amp;#039;Power:&amp;#039;&amp;#039;&amp;#039; a rig with four cards on one PLX board and two independent PSUs lost all four cards and the PLX board at once under large prompt-processing loads. See [[Cooling and power]]. {{Source|handle=replacedriver47|date=2026-10-05|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1556768826769674351}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Cards dropping off a switch baseboard under load:&amp;#039;&amp;#039;&amp;#039; Moliminous&amp;#039; 5 cards on an external GPU switch baseboard (beside 6 RTX 3090 on Ubuntu LTS) were stable alone but fell off the bus with PCIe lane and IOMMU errors on large prompts. Temperatures and PSU draw looked fine, though the logs showed the first card overdrawing to 260 W; lowering the power limit from 250 W to 180 W fixed it, and GLM-5.3-Flash now runs at 380k context. {{Source|handle=moliminous|date=2026-10-19|link=https://discord.com/channels/1518634379604136178/1518695289278566450/1561749293717659774}}&amp;lt;br /&amp;gt;{{Source|handle=moliminous|date=2026-10-19|link=https://discord.com/channels/1518634379604136178/1518695289278566450/1561768584869322753}}&amp;lt;br /&amp;gt;{{Source|handle=moliminous|date=2026-10-19|link=https://discord.com/channels/1518634379604136178/1518695289278566450/1561769135057149953}}&amp;lt;br /&amp;gt;{{Source|handle=gnasherrr|date=2026-10-19|link=https://discord.com/channels/1518634379604136178/1518695289278566450/1561777452521623654}} See [[Cooling and power]].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Cards dropping off a switch baseboard under load:&amp;#039;&amp;#039;&amp;#039; Moliminous&amp;#039; 5 cards on an external GPU switch baseboard (beside 6 RTX 3090 on Ubuntu LTS) were stable alone but fell off the bus with PCIe lane and IOMMU errors on large prompts. Temperatures and PSU draw looked fine, though the logs showed the first card overdrawing to 260 W; lowering the power limit from 250 W to 180 W fixed it, and GLM-5.3-Flash now runs at 380k context. {{Source|handle=moliminous|date=2026-10-19|link=https://discord.com/channels/1518634379604136178/1518695289278566450/1561749293717659774}}&amp;lt;br /&amp;gt;{{Source|handle=moliminous|date=2026-10-19|link=https://discord.com/channels/1518634379604136178/1518695289278566450/1561768584869322753}}&amp;lt;br /&amp;gt;{{Source|handle=moliminous|date=2026-10-19|link=https://discord.com/channels/1518634379604136178/1518695289278566450/1561769135057149953}}&amp;lt;br /&amp;gt;{{Source|handle=gnasherrr|date=2026-10-19|link=https://discord.com/channels/1518634379604136178/1518695289278566450/1561777452521623654}} See [[Cooling and power]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* {{Status|Warning}} A PLX board from one Chinese supplier arrived defective twice (shorts as soon as the CPU power connectors are plugged in). {{Source|handle=lubakmanqk|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562912120121725050}}&amp;lt;br /&amp;gt;{{Source|handle=lubakmanqk|date=2026-10-23|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1563122360251457646}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* {{Status|Warning}} A PLX board from one Chinese supplier arrived defective twice (shorts as soon as the CPU power connectors are plugged in)&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;. Lyubo&#039;s post names the seller only in screenshots, so it is not repeated here&lt;/ins&gt;. {{Source|handle=lubakmanqk|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562912120121725050}}&amp;lt;br /&amp;gt;{{Source|handle=lubakmanqk|date=2026-10-23|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1563122360251457646}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Topology rules of thumb ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Topology rules of thumb ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l74&quot;&gt;Line 74:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 75:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Expansion boards and external chassis ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Expansion boards and external chassis ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* fnerdman is considering moving four cards off an EPYC host onto a consumer CPU with an Alibaba &quot;PCIe 4.0 x16 to ...&quot; expansion board that appears to daisy-chain. Open questions he raised, unanswered: what its three 6-pin power inputs are, and whether cards come back stable if the board&#039;s PSU is cut and restored while the host stays up. {{Status|Theory}} {{Source|handle=fnerdman|date=2026-10-26|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1564244395887435847}}  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* fnerdman is considering moving four cards off an EPYC host onto a consumer CPU with an Alibaba &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[https://www.alibaba.com/product-detail/-PCIe-4-0-x16-to_1601798200898.html &lt;/ins&gt;&quot;PCIe 4.0 x16 to ...&quot; expansion board&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;] &lt;/ins&gt;that appears to daisy-chain. Open questions he raised, unanswered: what its three 6-pin power inputs are, and whether cards come back stable if the board&#039;s PSU is cut and restored while the host stays up. {{Status|Theory}} {{Source|handle=fnerdman|date=2026-10-26|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1564244395887435847}}  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Fitting cards on the board ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Fitting cards on the board ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;&#039;Front-panel header:&#039;&#039;&#039; matstatman needed about 10 mm of clearance to fit a card over the front-panel pin header. Options: angled Dupont connectors (too tall for his case), pin-header risers (Mickey used them), or enabling Wake-on-LAN and &quot;power on after power loss&quot; and leaving the header unplugged (Sojun). {{Source|handle=matstatman|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557467080104738938}}&amp;lt;br /&amp;gt;{{Source|handle=matstatman|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557473010406137947}}&amp;lt;br /&amp;gt;{{Source|handle=gpmickey|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557476304436068516}}&amp;lt;br /&amp;gt;{{Source|handle=sojun80|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557484238914322504}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;&#039;Front-panel header:&#039;&#039;&#039; matstatman needed about 10 mm of clearance to fit a card over the front-panel pin header. Options: angled Dupont connectors (&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GlobalApathy linked a [https://www.moddiy.com/products/5775/Motherboard-Front-Panel-Header-Dupont-10-Pin-2.54mm-Angled-Connector.html moddiy 10-pin angled header], &lt;/ins&gt;too tall for his case), pin-header risers (Mickey used them), or enabling Wake-on-LAN and &quot;power on after power loss&quot; and leaving the header unplugged (Sojun). {{Source|handle=matstatman|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557467080104738938&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}}&amp;lt;br /&amp;gt;{{Source|handle=globalapathy|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557470867494015046&lt;/ins&gt;}}&amp;lt;br /&amp;gt;{{Source|handle=matstatman|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557473010406137947}}&amp;lt;br /&amp;gt;{{Source|handle=gpmickey|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557476304436068516}}&amp;lt;br /&amp;gt;{{Source|handle=sojun80|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557484238914322504}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Fan headers:&amp;#039;&amp;#039;&amp;#039; alanoo: on ASRock Rack Rome boards the cards collide with 4 of the 7 fan headers. fafinet&amp;#039;s cards also touch the fan headers on his board and do not seat fully, but still work. {{Source|handle=alanoo|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562450191464800266}}&amp;lt;br /&amp;gt;{{Source|handle=fafinet|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562451857878818887}}&amp;lt;br /&amp;gt;{{Source|handle=fafinet|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562458858482307105}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Fan headers:&amp;#039;&amp;#039;&amp;#039; alanoo: on ASRock Rack Rome boards the cards collide with 4 of the 7 fan headers. fafinet&amp;#039;s cards also touch the fan headers on his board and do not seat fully, but still work. {{Source|handle=alanoo|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562450191464800266}}&amp;lt;br /&amp;gt;{{Source|handle=fafinet|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562451857878818887}}&amp;lt;br /&amp;gt;{{Source|handle=fafinet|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562458858482307105}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key cmp_wiki:diff:1.41:old-246:rev-361:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>ImportBot</name></author>
	</entry>
	<entry>
		<id>https://cmp.wiki/w/index.php?title=Risers_and_bifurcation&amp;diff=246&amp;oldid=prev</id>
		<title>ImportBot: Link width, riser cables, M.2/OcuLink/SlimSAS adapters, PCIe switches (PEX88096, PEX 8747, PEX9797) and bifurcation for CMP 170HX hosts, from Discord (Mountains, cibernox, segmond, fafinet, endsjeremy, domrockt2, markshowa, OB88594, replacedriver47, peter643, Miséricorde and others), PixelML/club-170hx and @darkmaniac7 (Ivan) lab notes</title>
		<link rel="alternate" type="text/html" href="https://cmp.wiki/w/index.php?title=Risers_and_bifurcation&amp;diff=246&amp;oldid=prev"/>
		<updated>2026-10-30T08:11:08Z</updated>

		<summary type="html">&lt;p&gt;Link width, riser cables, M.2/OcuLink/SlimSAS adapters, PCIe switches (PEX88096, PEX 8747, PEX9797) and bifurcation for CMP 170HX hosts, from Discord (Mountains, cibernox, segmond, fafinet, endsjeremy, domrockt2, markshowa, OB88594, replacedriver47, peter643, Miséricorde and others), PixelML/club-170hx and @darkmaniac7 (Ivan) lab notes&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 08:11, 30 October 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l64&quot;&gt;Line 64:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 64:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Topology rules of thumb ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Topology rules of thumb ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;&#039;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;All P2P lanes &lt;/del&gt;from one CPU.&#039;&#039;&#039; Miséricorde: you need all PCIe lanes from one CPU or P2P will not work properly. {{Source|handle=wakeupmbrc1|date=2026-10-16|link=https://discord.com/channels/1518634379604136178/1528826330454429706/1560650062474772653}} &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;On &lt;/del&gt;dual-socket &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;hosts&lt;/del&gt;, &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;whether &lt;/del&gt;P2P &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;works &lt;/del&gt;across sockets &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;is disputed: &lt;/del&gt;{{Status|&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Contested&lt;/del&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;&#039;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Lanes &lt;/ins&gt;from one CPU.&#039;&#039;&#039; Miséricorde: you need all PCIe lanes from one CPU or P2P will not work properly. {{Source|handle=wakeupmbrc1|date=2026-10-16|link=https://discord.com/channels/1518634379604136178/1528826330454429706/1560650062474772653}} &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;That holds for many boards, but it is not a hard rule: see the next item.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;** Miséricorde&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;: &lt;/del&gt;P2P does not work across sockets, which is why GPU servers hang all GPUs off one CPU. {{Source|handle=wakeupmbrc1|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561407364622458943}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* &#039;&#039;&#039;P2P across sockets works on a &lt;/ins&gt;dual-socket &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;EPYC server.&#039;&#039;&#039; On an 8-card Supermicro H12DSG-O-CPU (dual EPYC Rome, cards on both CPUs&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Gen2 x16, 64 GB BAR1, Morrowmake &lt;/ins&gt;P2P &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;build), &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;p2p-content-check.py&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; passed all 504 checks on 8 devices (every ordered pair at every transfer size, including the pairs &lt;/ins&gt;across &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;the two &lt;/ins&gt;sockets&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;), and &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;cudaDeviceCanAccessPeer&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; returned 1 for every pair. &lt;/ins&gt;{{Status|&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Proven}} {{Source|handle=darkmaniac7|date=2026-10-29|note=lab notes&lt;/ins&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;** xanthe_&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;: there are methods for it on the table, &lt;/del&gt;the mailbox method &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;or &lt;/del&gt;bayley&#039;s Linux kernel patch&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;. &lt;/del&gt;{{Source|handle=xanthefin|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561407943985864705}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;** &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Conflicting earlier source: &lt;/ins&gt;Miséricorde &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;said &lt;/ins&gt;P2P does not work across sockets, which is why GPU servers hang all GPUs off one CPU. {{Source|handle=wakeupmbrc1|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561407364622458943}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;** &lt;/del&gt;programmerboi&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;: &lt;/del&gt;QPI/NUMA overhead &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;is &lt;/del&gt;relatively low &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;in his experience&lt;/del&gt;. {{Source|handle=programmerboi|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561408307225428141&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}}&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;** &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Other earlier posts: &lt;/ins&gt;xanthe_ &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;named &lt;/ins&gt;the mailbox method &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;and &lt;/ins&gt;bayley&#039;s Linux kernel patch &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;as ways to get P2P &lt;/ins&gt;{{Source|handle=xanthefin|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561407943985864705}}&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;; &lt;/ins&gt;programmerboi &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;finds &lt;/ins&gt;QPI/NUMA overhead relatively low. {{Source|handle=programmerboi|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561408307225428141}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;** One lab data point: on a dual-socket Supermicro H12DSG-O-CPU, &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;cudaDeviceCanAccessPeer&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; returned 1 for a pair across sockets with the Morrowmake P2P build; the full byte-check matrix was not captured in the notes. {{Source|handle=darkmaniac7|date=2026-10-27|note=lab notes&lt;/del&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Keep a TP group behind one switch.&amp;#039;&amp;#039;&amp;#039; On servers with two switches of five slots each, put the cards of one group behind the same switch (consecutive slots). {{Source|handle=nathang6866|date=2026-10-20|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1561967586978177035}} On a Gigabyte G292-Z20 each pair sits on its own switch: fast P2P inside a pair, slower between pairs. {{Source|handle=cmdrwaka324|date=2026-10-26|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1564120367398780969}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Keep a TP group behind one switch.&amp;#039;&amp;#039;&amp;#039; On servers with two switches of five slots each, put the cards of one group behind the same switch (consecutive slots). {{Source|handle=nathang6866|date=2026-10-20|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1561967586978177035}} On a Gigabyte G292-Z20 each pair sits on its own switch: fast P2P inside a pair, slower between pairs. {{Source|handle=cmdrwaka324|date=2026-10-26|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1564120367398780969}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Hops:&amp;#039;&amp;#039;&amp;#039; gnasherrr recalls PLX latency at about 105 ns. {{Source|handle=gnasherrr|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561398366007463959}} endsjeremy: tensor parallel across the array is bandwidth limited whatever the lane count, so x8 per card is enough, and switches shine for PP and P2P DMA. {{Source|handle=endsjeremy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561396033106215105}}&amp;lt;br /&amp;gt;{{Source|handle=endsjeremy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561397344296247307}}&amp;lt;br /&amp;gt;{{Source|handle=endsjeremy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561401282399436973}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Hops:&amp;#039;&amp;#039;&amp;#039; gnasherrr recalls PLX latency at about 105 ns. {{Source|handle=gnasherrr|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561398366007463959}} endsjeremy: tensor parallel across the array is bandwidth limited whatever the lane count, so x8 per card is enough, and switches shine for PP and P2P DMA. {{Source|handle=endsjeremy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561396033106215105}}&amp;lt;br /&amp;gt;{{Source|handle=endsjeremy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561397344296247307}}&amp;lt;br /&amp;gt;{{Source|handle=endsjeremy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561401282399436973}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>ImportBot</name></author>
	</entry>
	<entry>
		<id>https://cmp.wiki/w/index.php?title=Risers_and_bifurcation&amp;diff=198&amp;oldid=prev</id>
		<title>ImportBot: Link width, riser cables, M.2/OcuLink/SlimSAS adapters, PCIe switches (PEX88096, PEX 8747, PEX9797) and bifurcation for CMP 170HX hosts, from Discord (Mountains, cibernox, segmond, fafinet, endsjeremy, domrockt2, markshowa, OB88594, replacedriver47, peter643, Miséricorde and others), PixelML/club-170hx and @darkmaniac7 (Ivan) lab notes</title>
		<link rel="alternate" type="text/html" href="https://cmp.wiki/w/index.php?title=Risers_and_bifurcation&amp;diff=198&amp;oldid=prev"/>
		<updated>2026-10-30T08:05:01Z</updated>

		<summary type="html">&lt;p&gt;Link width, riser cables, M.2/OcuLink/SlimSAS adapters, PCIe switches (PEX88096, PEX 8747, PEX9797) and bifurcation for CMP 170HX hosts, from Discord (Mountains, cibernox, segmond, fafinet, endsjeremy, domrockt2, markshowa, OB88594, replacedriver47, peter643, Miséricorde and others), PixelML/club-170hx and @darkmaniac7 (Ivan) lab notes&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Status|Reported}} {{Cards|both}}&lt;br /&gt;
&lt;br /&gt;
How cards get connected when the board has too few slots, the wrong slot widths, or slots too close together: riser cables, M.2 and OcuLink adapters, SlimSAS cabling, PCIe switch boards and slot bifurcation. For BIOS settings see [[Server BIOS setup]]; for boards see [[Platforms]] and [[Consumer motherboards]].&lt;br /&gt;
&lt;br /&gt;
== Link width: what the card can use ==&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;An unmodified card links at x4.&amp;#039;&amp;#039;&amp;#039; The card&amp;#039;s lanes 4 to 15 have no AC-coupling capacitors fitted, so it trains x4 until the [[PCIe x16 capacitor mod]] is done; the stock link is Gen1 x4 (about 0.85 GB/s). {{Source|handle=djpandaman|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563629622673936384|repo=https://github.com/PixelML/club-170hx}} (docs/CMP170HX-UNDERSTANDING.md, docs/RESEARCH-CMP170HX-UNLOCKS.md)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Speed:&amp;#039;&amp;#039;&amp;#039; the unlock brings the link to Gen2. Gen2 is the ceiling on 8 GB cards; Gen3 on 10 GB cards needs an RIR burn. See [[Gen2 link retrain]] and [[Unlocks]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Measured:&amp;#039;&amp;#039;&amp;#039; about 6.65 GB/s each way between two cards at Gen2 x16 (Morrowmake&amp;#039;s README); 6.68 GB/s device-to-host per card at Gen2 x16 behind a PLX switch (PixelML). An unmodified card in a PCIe 3.0 x1 slot measured about 0.38 GB/s at Gen2 x1 (anoane). {{Source|handle=darkmaniac7|date=2026-10-29|note=lab notes}} {{Source|handle=djpandaman|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563629622673936384|repo=https://github.com/PixelML/club-170hx}}; {{Source|handle=logy0|date=2026-10-10|link=https://discord.com/channels/1518634379604136178/1540599965007478854/1558505023187714068|repo=https://github.com/anoane/01-proxmox-dual-gpu-passthrough}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;A slot that drops from x16 to x8&amp;#039;&amp;#039;&amp;#039; after the cap mod can be a bad cap job (Waka324 saw it on his early cards) or a damaged slot (matstatman blames his used X99 board). {{Source|handle=matstatman|date=2026-10-16|link=https://discord.com/channels/1518634379604136178/1528826330454429706/1560618524995489825}}&amp;lt;br /&amp;gt;{{Source|handle=cmdrwaka324|date=2026-10-16|link=https://discord.com/channels/1518634379604136178/1528826330454429706/1560640558685233254}}&lt;br /&gt;
&lt;br /&gt;
=== Does width matter? ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Pipeline parallel runs fine on narrow links.&amp;#039;&amp;#039;&amp;#039; Mountains runs four cards at Gen2 x4 as PP for GLM 5.3 Flash at 130 to 160 tok/s single stream, and says he gets similar speeds to x16 setups, maybe 10% less single stream. {{Source|handle=mountains1605|date=2026-10-04|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1556409589124304957}}&amp;lt;br /&amp;gt;{{Source|handle=mountains1605|date=2026-10-20|link=https://discord.com/channels/1518634379604136178/1528826330454429706/1561959462024118353}}&amp;lt;br /&amp;gt;{{Source|handle=mountains1605|date=2026-10-23|link=https://discord.com/channels/1518634379604136178/1528826330454429706/1562982101157150771}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Tensor parallel and P2P need width.&amp;#039;&amp;#039;&amp;#039; segmond tried Morrowmake&amp;#039;s GLM recipe at x4 without P2P and was not close to the published numbers; cibernox: &amp;quot;the 16x mod is doing a lot for the high speed&amp;quot;. {{Source|handle=segmond|date=2026-10-20|link=https://discord.com/channels/1518634379604136178/1528826330454429706/1561950054254645291}}&amp;lt;br /&amp;gt;{{Source|handle=segmond|date=2026-10-20|link=https://discord.com/channels/1518634379604136178/1528826330454429706/1562091215891996793}}&amp;lt;br /&amp;gt;{{Source|handle=cibernox|date=2026-10-20|link=https://discord.com/channels/1518634379604136178/1528826330454429706/1562107263009689731}} Two cards at x4 running GLM 5.3 were &amp;quot;brutally slow&amp;quot; for fallengod9962. {{Source|handle=fallengod9962|date=2026-10-23|link=https://discord.com/channels/1518634379604136178/1528826330454429706/1563015573489586318}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Training with offload&amp;#039;&amp;#039;&amp;#039; is bottlenecked by the link: orrorin watched PCIe 2.0 x4 saturate during offload while doing SFT on four cards. {{Source|handle=_orrorin|date=2026-10-16|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1560681450028929118}}&amp;lt;br /&amp;gt;{{Source|handle=_orrorin|date=2026-10-16|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1560681653788217435}}&lt;br /&gt;
* mrpandagod: Gen2 x16 is about as fast as Thunderbolt 5 between Mac nodes; fine for pipeline parallel, too slow for tensor parallel. {{Source|handle=djpandaman|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1557238375755546705}}&lt;br /&gt;
&lt;br /&gt;
Because an unmodified card only uses four lanes, an x4 slot, an x4 bifurcation slice or an M.2 adapter costs it nothing until you do the cap mod. Plan the x16 paths if you intend to mod the cards.&lt;br /&gt;
&lt;br /&gt;
== Riser cables ==&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Passive risers can hide the card from the BMC.&amp;#039;&amp;#039;&amp;#039; fafinet&amp;#039;s four CMPs in motherboard slots report temperatures to the BMC and drive its fan curve; the fifth, on a passive eBay riser (the only kind that fit under a card on his SSI CEB board), is seen as an add-in card, not a GPU, so the BMC cannot read its temperature. Different port and different cards gave the same result. He sets fan curves from the OS instead. {{Source|handle=fafinet|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562285217731973171}}&amp;lt;br /&amp;gt;{{Source|handle=fafinet|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562300430439157850}}&amp;lt;br /&amp;gt;{{Source|handle=fafinet|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562308658975739936}}&lt;br /&gt;
* endsjeremy: buy risers from a reputable brand (he names ADT-Link as known good but expensive); passive risers bring &amp;quot;inexplicable gremlins&amp;quot;, though a PCIe 3.0 riser should not be hard to get working well. {{Source|handle=endsjeremy|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562311490470547517}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;A failed Gen2 retrain on a riser&amp;#039;&amp;#039;&amp;#039; shows as LnkSta 2.5 GT/s &amp;quot;(downgraded)&amp;quot;: that points at the signal path (riser, extension cable or slot), not settings. Move the card to test. {{Source|handle=darkmaniac7|date=2026-10-29|note=lab notes}}&lt;br /&gt;
* An x16 riser cable in a PCIe 4.0 x24 slot works (port00, Hyve Edge Metal G10 servers). {{Source|handle=port00|date=2026-10-23|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1563212974896713801}} See [[Hyve Edge Metal G10]].&lt;br /&gt;
* A card with a water block and AIO radiator can be fitted with a riser cable and a bigger case, or with the radiator left outside the case, which is what PJ did. {{Source|handle=robbbbbb7973|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1561267848729591880}}&amp;lt;br /&amp;gt;{{Source|handle=boz._.|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1561341400308645929}}&amp;lt;br /&amp;gt;{{Source|handle=zingy90210|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1561348651786305590}}&lt;br /&gt;
&lt;br /&gt;
== M.2, OcuLink and SlimSAS ==&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;M.2 to PCIe x16 extender cables&amp;#039;&amp;#039;&amp;#039; add a card to a consumer board from a free M.2 slot: matstatman suggested an M.2 NVMe to PCIe 3.0 x16 extender (SinLoon); AnalyticETH runs &amp;quot;a bunch of these&amp;quot;. {{Source|handle=matstatman|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557484331193077841}}&amp;lt;br /&amp;gt;{{Source|handle=analyticeth|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557484927375769726}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;OcuLink from M.2:&amp;#039;&amp;#039;&amp;#039; GlobalApathy ran a card over OcuLink from an M.2 adapter on a Dell micro PC into an external GPU frame; it worked but was &amp;quot;a bit flaky&amp;quot;. {{Source|handle=globalapathy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561376002280661025}} gnasherrr runs four cards from a 1-to-4 OcuLink setup while his switch boards ship. {{Source|handle=gnasherrr|date=2026-10-25|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1563736510082064516}} See [[Dell OptiPlex 7040m]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;SlimSAS 8i (SFF-8654)&amp;#039;&amp;#039;&amp;#039; cables with PCIe x16 adapters are a common way to hang cards off server boards and switch boards; PCIe x16 to 2x SlimSAS 8i host adapters cost about the same in the US and EU as in China. {{Source|handle=colo2442|date=2026-10-06|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557026698015277067}}&amp;lt;br /&amp;gt;{{Source|handle=kellertreppe123|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1563568589011947524}} Mountains extended his cards above a regular case on a 2020-extrusion frame with external SlimSAS. {{Source|handle=mountains1605|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562324256296149026}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Retimed adapters:&amp;#039;&amp;#039;&amp;#039; atsasin&amp;#039;s 39com SlimSAS adapter boards have proper retimers and show no signal degradation at PCIe Gen3. {{Source|handle=atsasin2126|date=2026-10-17|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1561130214560374887}}&lt;br /&gt;
* Connector names get mixed up: the 8i ports on the Tyan Tomcat board in the Hyve servers are OcuLink, not SlimSAS (endsjeremy corrected himself). {{Source|handle=endsjeremy|date=2026-10-23|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1563281929783087245}}&lt;br /&gt;
&lt;br /&gt;
== Bifurcation ==&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Passive x4x4x4x4 adapters&amp;#039;&amp;#039;&amp;#039; are cheap (about 20 USD) but need bifurcation support in the board&amp;#039;s BIOS. {{Source|handle=ichundes|date=2026-10-10|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1558461209710301246}}&amp;lt;br /&amp;gt;{{Source|handle=xeax|date=2026-10-10|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1558465232597291019}}&lt;br /&gt;
* Consumer boards often bifurcate only 4x x4: dottoreargus&amp;#039; X870 board with one Gen5 x16 slot. {{Source|handle=dottoreargus|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557480585134350349}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;x8/x8 server slots:&amp;#039;&amp;#039;&amp;#039; slots bifurcated x8/x8 so every card sits behind its own root port worked for four cards under ESXi (Gen2 x8 each). {{Source|handle=darkmaniac7|date=2026-10-21|note=lab notes}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;WRX90 BIOS mod:&amp;#039;&amp;#039;&amp;#039; [https://github.com/NA-DEGEN-GIRL/wrx90-bios-mod NA-DEGEN-GIRL/wrx90-bios-mod] adds an x8/x8 bifurcation option to the ASUS Pro WS WRX90E-SAGE SE on BIOS 1317. Only a boot to Setup with the option visible has been observed, on one board; x8/x8 link negotiation, P2P and stability are not verified. {{Source|handle=stcord|date=2026-10-25|link=https://discord.com/channels/1518634379604136178/1518691940646781070/1563898614982643762|repo=https://github.com/NA-DEGEN-GIRL/wrx90-bios-mod}} {{Status|Theory}} See [[ASUS Pro WS WRX90E-SAGE SE]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;NVMe on switch boards:&amp;#039;&amp;#039;&amp;#039; cheap NVMe carriers only work with bifurcation; real NVMe RAID cards such as the HighPoint SSD7749M2 are expensive (cibernox, kawaii). peter643 considered a 300 USD 8x NVMe switch card for a board without bifurcation before going the switch-firmware route. {{Source|handle=kawaii8789|date=2026-10-08|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557675372269674538}}&amp;lt;br /&amp;gt;{{Source|handle=cibernox|date=2026-10-08|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557724476244885659}}&amp;lt;br /&amp;gt;{{Source|handle=peter643|date=2026-10-08|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557736740742238381}}&lt;br /&gt;
* Gigabyte MZ32-AR0 splits one PCIe x16 into SAS connectors. {{Source|handle=wakeupmbrc1|date=2026-10-16|link=https://discord.com/channels/1518634379604136178/1528826330454429706/1560650062474772653}}&lt;br /&gt;
&lt;br /&gt;
== PCIe switch boards ==&lt;br /&gt;
Switch boards (PLX/Broadcom PEX) let one host slot feed several cards and let cards talk to each other without crossing the CPU. They are the usual way to run 4 to 10 cards from a consumer board.&lt;br /&gt;
&lt;br /&gt;
=== Which switch ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;PEX88096&amp;#039;&amp;#039;&amp;#039; (Gen4): one board feeds 5 cards at x16, or 10 at x8. Typical boards take a PCIe x16 host link and use 2x SFF-8654 8i per board. A 6-port version cuts the cost about in half (endsjeremy). {{Source|handle=gnasherrr|date=2026-10-17|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561000198086336665}}&amp;lt;br /&amp;gt;{{Source|handle=wakeupmbrc1|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561404369382023203}}&amp;lt;br /&amp;gt;{{Source|handle=endsjeremy|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562309916864282676}}&amp;lt;br /&amp;gt;{{Source|handle=endsjeremy|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562309959482478667}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;PEX88144 / PEX89144&amp;#039;&amp;#039;&amp;#039;: one board for 8 cards from one root port, but expensive (PEX89144 over 3000 USD) and rare. {{Source|handle=wakeupmbrc1|date=2026-10-17|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561000283566514279}}&amp;lt;br /&amp;gt;{{Source|handle=wakeupmbrc1|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561402969126080597}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Cascading:&amp;#039;&amp;#039;&amp;#039; with two PEX88096 boards in two host slots there are 16 lanes left on each switch, so cascade them so DMA reaches all 8 cards (endsjeremy). {{Source|handle=endsjeremy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561403392465707150}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;3x Gen4 x16 switch cards&amp;#039;&amp;#039;&amp;#039; exist and cost less than the 5x x16 versions. {{Source|handle=gpmickey|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557481786802573433}}&lt;br /&gt;
* A Broadcom redriver/retimer board is the other option GlobalApathy knows for adding slots. {{Source|handle=globalapathy|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557486128154550444}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Older switches in GPU servers:&amp;#039;&amp;#039;&amp;#039; PEX9797 (PCIe 3.0) in the Supermicro SYS-4028GR-TRT2; PEX 8747 in the PixelML club&amp;#039;s 4-card host. See [[Supermicro SYS-4028GR-TRT2]].&lt;br /&gt;
&lt;br /&gt;
=== What people found ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;P2P works on a PEX88096 board&amp;#039;&amp;#039;&amp;#039; from Alibaba (&amp;quot;5 GPU Expansion&amp;quot;): domrockt2 got P2P once he fixed a SAS cable in the wrong port, which had left the host link at x8. In hindsight he would buy one with more slots. {{Source|handle=domrockt2|date=2026-10-15|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1560201364552941631}} He runs one on a Z690 with an i5-14600K and recommends a fan on the PLX chip. {{Source|handle=domrockt2|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562908280014110731}}&amp;lt;br /&amp;gt;{{Source|handle=domrockt2|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562913694437081209}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Static BAR1 P2P on a PEX 8747 host:&amp;#039;&amp;#039;&amp;#039; the PixelML club got 12/12 ordered pairs byte-exact at 5.79 GB/s with four extra patches and a pre-driver BAR placement step adopted via kexec; latency 16 us (4 KiB) and 194 us (1 MiB) vs 22 and 343 us host-staged. P2P helped Qwen3.8-27B TP2 (+11%) but hurt GLM-5.3-Flash TP4 on that Broadwell host (-20 to -26% one user), the opposite of Morrowmake&amp;#039;s EPYC result (+11%). {{Source|handle=djpandaman|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563629622673936384|repo=https://github.com/PixelML/club-170hx}} {{Status|Contested}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Two cards behind one switch&amp;#039;&amp;#039;&amp;#039; corrupted the kernel resource tree on every boot until the per-card BAR1 resize was serialized (&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;rebar-serialize.patch&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;, same fix as cmpunlocker PR #59). {{Source|handle=djpandaman|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1563629622673936384|repo=https://github.com/PixelML/club-170hx}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;MMIO behind switches:&amp;#039;&amp;#039;&amp;#039; OB88594 says many boards show MMIO problems behind a PLX switch, so only mailbox P2P is usable there, and in tensor parallel that mailbox P2P crashes the inference program with Xid 13. {{Source|handle=ob88594|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1557383845844615241}} Some PLX machines have too little MMIO for the 64 GB BAR, and the Morrowmake P2P mode runs with a 64 MB BAR. {{Source|handle=ob88594|date=2026-10-05|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1556527198540922981}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Switch firmware:&amp;#039;&amp;#039;&amp;#039; replacedriver47 found his PEX88096 firmware lacked hotplug, which he says is required to remap BAR addressing behind the switch. {{Source|handle=replacedriver47|date=2026-10-24|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1563580726882861097}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Per-slot bifurcation on a PEX88096&amp;#039;&amp;#039;&amp;#039; needs a custom SBR (switch firmware). A seller preloaded a 4x x4 slot for peter643 but would not share the image; an open hardware project page has the procedure and files, and peter643 believes only about 8 bytes change (4 setting bytes and 4 CRC bytes). {{Source|handle=peter643|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557534181284913273}}&amp;lt;br /&amp;gt;{{Source|handle=peter643|date=2026-10-08|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557765698011402402}}&amp;lt;br /&amp;gt;{{Source|handle=peter643|date=2026-10-08|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557792050739417210}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Five slots, four cards:&amp;#039;&amp;#039;&amp;#039; cibernox&amp;#039;s switch takes 5 cards; he stops at 4 (256 GB) because he does not expect TP to scale well past 4 cards and 320 GB opens few extra models; Sojun agrees 256 GB is a reasonable stopping point. {{Status|Theory}} {{Source|handle=cibernox|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557428289365082245}}&amp;lt;br /&amp;gt;{{Source|handle=sojun80|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1528513735575081070/1557430622245359738}} &lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;GPUDirect Storage across switches:&amp;#039;&amp;#039;&amp;#039; markshowa (2x PEX9797 plus a PLX88048 carrier) finds GDS works and does better inside a switch, but writes across switches are very slow and look serialized; he suspects the same mechanism behind his poor cross-switch P2P. {{Source|handle=markshowa|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562923128500392051}}&lt;br /&gt;
* {{Status|Warning}} &amp;#039;&amp;#039;&amp;#039;Power:&amp;#039;&amp;#039;&amp;#039; a rig with four cards on one PLX board and two independent PSUs lost all four cards and the PLX board at once under large prompt-processing loads. See [[Cooling and power]]. {{Source|handle=replacedriver47|date=2026-10-05|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1556768826769674351}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Cards dropping off a switch baseboard under load:&amp;#039;&amp;#039;&amp;#039; Moliminous&amp;#039; 5 cards on an external GPU switch baseboard (beside 6 RTX 3090 on Ubuntu LTS) were stable alone but fell off the bus with PCIe lane and IOMMU errors on large prompts. Temperatures and PSU draw looked fine, though the logs showed the first card overdrawing to 260 W; lowering the power limit from 250 W to 180 W fixed it, and GLM-5.3-Flash now runs at 380k context. {{Source|handle=moliminous|date=2026-10-19|link=https://discord.com/channels/1518634379604136178/1518695289278566450/1561749293717659774}}&amp;lt;br /&amp;gt;{{Source|handle=moliminous|date=2026-10-19|link=https://discord.com/channels/1518634379604136178/1518695289278566450/1561768584869322753}}&amp;lt;br /&amp;gt;{{Source|handle=moliminous|date=2026-10-19|link=https://discord.com/channels/1518634379604136178/1518695289278566450/1561769135057149953}}&amp;lt;br /&amp;gt;{{Source|handle=gnasherrr|date=2026-10-19|link=https://discord.com/channels/1518634379604136178/1518695289278566450/1561777452521623654}} See [[Cooling and power]].&lt;br /&gt;
* {{Status|Warning}} A PLX board from one Chinese supplier arrived defective twice (shorts as soon as the CPU power connectors are plugged in). {{Source|handle=lubakmanqk|date=2026-10-22|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1562912120121725050}}&amp;lt;br /&amp;gt;{{Source|handle=lubakmanqk|date=2026-10-23|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1563122360251457646}}&lt;br /&gt;
&lt;br /&gt;
=== Topology rules of thumb ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;All P2P lanes from one CPU.&amp;#039;&amp;#039;&amp;#039; Miséricorde: you need all PCIe lanes from one CPU or P2P will not work properly. {{Source|handle=wakeupmbrc1|date=2026-10-16|link=https://discord.com/channels/1518634379604136178/1528826330454429706/1560650062474772653}} On dual-socket hosts, whether P2P works across sockets is disputed: {{Status|Contested}}&lt;br /&gt;
** Miséricorde: P2P does not work across sockets, which is why GPU servers hang all GPUs off one CPU. {{Source|handle=wakeupmbrc1|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561407364622458943}}&lt;br /&gt;
** xanthe_: there are methods for it on the table, the mailbox method or bayley&amp;#039;s Linux kernel patch. {{Source|handle=xanthefin|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561407943985864705}}&lt;br /&gt;
** programmerboi: QPI/NUMA overhead is relatively low in his experience. {{Source|handle=programmerboi|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561408307225428141}}&lt;br /&gt;
** One lab data point: on a dual-socket Supermicro H12DSG-O-CPU, &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;cudaDeviceCanAccessPeer&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; returned 1 for a pair across sockets with the Morrowmake P2P build; the full byte-check matrix was not captured in the notes. {{Source|handle=darkmaniac7|date=2026-10-27|note=lab notes}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Keep a TP group behind one switch.&amp;#039;&amp;#039;&amp;#039; On servers with two switches of five slots each, put the cards of one group behind the same switch (consecutive slots). {{Source|handle=nathang6866|date=2026-10-20|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1561967586978177035}} On a Gigabyte G292-Z20 each pair sits on its own switch: fast P2P inside a pair, slower between pairs. {{Source|handle=cmdrwaka324|date=2026-10-26|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1564120367398780969}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Hops:&amp;#039;&amp;#039;&amp;#039; gnasherrr recalls PLX latency at about 105 ns. {{Source|handle=gnasherrr|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561398366007463959}} endsjeremy: tensor parallel across the array is bandwidth limited whatever the lane count, so x8 per card is enough, and switches shine for PP and P2P DMA. {{Source|handle=endsjeremy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561396033106215105}}&amp;lt;br /&amp;gt;{{Source|handle=endsjeremy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561397344296247307}}&amp;lt;br /&amp;gt;{{Source|handle=endsjeremy|date=2026-10-18|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561401282399436973}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;P2P latency reference:&amp;#039;&amp;#039;&amp;#039; about 1.7 us over the CPU root, about 1.4 us on a crossbar (markshowa); about 1.5 us per hardware call between CMPs on native Gen2 x16 slots (Miséricorde); switches and retimers add latency. {{Source|handle=markshowa|date=2026-10-17|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561013734808363029}}&amp;lt;br /&amp;gt;{{Source|handle=wakeupmbrc1|date=2026-10-17|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1561014804288770152}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;10 cards:&amp;#039;&amp;#039;&amp;#039; zorg33 asked whether 10x x8 on one PEX88096 or 5+5 x16 on two switches gives better TP decode; untested. {{Source|handle=zorg33|date=2026-10-06|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1556942685816889397}} djpandaman chose 10x x8 on one switch and will add a second if bandwidth bottlenecks. {{Source|handle=djpandaman|date=2026-10-09|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557988514195570768}} endsjeremy says jumping between two 5-card arrays &amp;quot;murders performance&amp;quot;. {{Status|Theory}} {{Source|handle=endsjeremy|date=2026-10-09|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557998376115511377}} &lt;br /&gt;
&lt;br /&gt;
== Expansion boards and external chassis ==&lt;br /&gt;
* fnerdman is considering moving four cards off an EPYC host onto a consumer CPU with an Alibaba &amp;quot;PCIe 4.0 x16 to ...&amp;quot; expansion board that appears to daisy-chain. Open questions he raised, unanswered: what its three 6-pin power inputs are, and whether cards come back stable if the board&amp;#039;s PSU is cut and restored while the host stays up. {{Status|Theory}} {{Source|handle=fnerdman|date=2026-10-26|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1564244395887435847}} &lt;br /&gt;
&lt;br /&gt;
== Fitting cards on the board ==&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Front-panel header:&amp;#039;&amp;#039;&amp;#039; matstatman needed about 10 mm of clearance to fit a card over the front-panel pin header. Options: angled Dupont connectors (too tall for his case), pin-header risers (Mickey used them), or enabling Wake-on-LAN and &amp;quot;power on after power loss&amp;quot; and leaving the header unplugged (Sojun). {{Source|handle=matstatman|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557467080104738938}}&amp;lt;br /&amp;gt;{{Source|handle=matstatman|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557473010406137947}}&amp;lt;br /&amp;gt;{{Source|handle=gpmickey|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557476304436068516}}&amp;lt;br /&amp;gt;{{Source|handle=sojun80|date=2026-10-07|link=https://discord.com/channels/1518634379604136178/1534370835220004885/1557484238914322504}}&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Fan headers:&amp;#039;&amp;#039;&amp;#039; alanoo: on ASRock Rack Rome boards the cards collide with 4 of the 7 fan headers. fafinet&amp;#039;s cards also touch the fan headers on his board and do not seat fully, but still work. {{Source|handle=alanoo|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562450191464800266}}&amp;lt;br /&amp;gt;{{Source|handle=fafinet|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562451857878818887}}&amp;lt;br /&amp;gt;{{Source|handle=fafinet|date=2026-10-21|link=https://discord.com/channels/1518634379604136178/1518692084729511967/1562458858482307105}}&lt;br /&gt;
&lt;br /&gt;
== Related ==&lt;br /&gt;
[[Platforms]], [[Consumer motherboards]], [[Server BIOS setup]], [[PCIe x16 capacitor mod]], [[Gen2 link retrain]], [[Resizable BAR and BAR1 64 GB]], [[P2P]], [[Cooling and power]], [[Power and cabling warnings]], [[Troubleshooting]].&lt;br /&gt;
&lt;br /&gt;
{{ImportFooter}}&lt;br /&gt;
[[Category:Platforms]]&lt;br /&gt;
[[Category:8 GB]]&lt;br /&gt;
[[Category:10 GB]]&lt;/div&gt;</summary>
		<author><name>ImportBot</name></author>
	</entry>
</feed>