Enclosure & Hardware Discussions
Any eGPU improvements expected with Titan Ridge TB3?
 

Any eGPU improvements expected with Titan Ridge TB3?  

  RSS

Den
 Den
(@den)
New Member
Joined: 2 years ago
 

So the new Titan Ridge Thunderbolt 3 seems to replace the Alpine Ridge in the near future. The bandwidth will remain the same though.
There is a question I am trying to google for weeks already with no result, so I decided to ask it here:
"Does anyone know if we may expect any improvement in TB3-eGPU performance using the new controllers?"

Any information you can provide would be very useful!

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
4chip4
(@4chip4)
Estimable Member
Joined: 2 years ago
 

The specs do not have anything that would indicate that - though being a next-gen device can certainly help in indirect ways. For example, there seems to be a strong emphasis on USB interop, so there is a hope we'll see less problems with laggy USB ports and USB bandwidth allocation (a pain point for nearly all Alpine Ridge implementations). Being able to plug in into (non-TB3) USB-C  also helps with laptops that have only one or two TB3 ports. None of this is going to improve raw performance, but will come handy in driving eGPU capability mainstream.

2017 HP Spectre x360 15 i7-8550U GTX150 + GTX970@16Gbps-TB3 (HP Omen Accelerator) + Oculus Rift + Win10 (no guide)
HP Omen Accelerator Thunderbolt 3 enclosure legs stand removal walkthrough
Employed by HP, but my posts and opinions expressed on this forum are my own.


ReplyQuote
Den
 Den
(@den)
New Member
Joined: 2 years ago
 

Thank you for your answer.

I was really hoping that the issue with the TB3 eGPU overhead would be solved with the Titan Ridge controllers 🙁
As far as I understood (correct me if I am wrong), TB3 has enough bandwidth to get zero losses, however as TB3 does not communicate directly with the CPU, we see an overhead resulting in ~20 % performance drop.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
4chip4
(@4chip4)
Estimable Member
Joined: 2 years ago
 

TB3 is (still) not an endless bucket of bandwidth 🙂

It's not that simple. There is potential for way, WAY more bandwidth available in desktop systems (x16 PCIe 3.0 is far more than what TB3 can do). In addition, it's not just about bandwidth, but also LAG. How TB3 is connected (CPU vs PCH) is another question - again, not really a function of TB itself, but rather the CPU and how system integrators implement it. Very few of the *performance* losses (if any) came from Alpine Ridge as such.

Long story short - you can't have meters-long infinite-bandwidth zero-lag cables. There will always be a performance tradeoff, the question is just how much.

2017 HP Spectre x360 15 i7-8550U GTX150 + GTX970@16Gbps-TB3 (HP Omen Accelerator) + Oculus Rift + Win10 (no guide)
HP Omen Accelerator Thunderbolt 3 enclosure legs stand removal walkthrough
Employed by HP, but my posts and opinions expressed on this forum are my own.


ReplyQuote
karatekid430
(@karatekid430)
Estimable Member
Joined: 2 years ago
 

titan ridge Windows RS3

Faster device enumeration means less of the lag in between plugging it in and it loading.
Moving responsibility from BIOS to OS with OsNativePciEnumeration will mean less to go wrong with firmware. If the OS is managing enumeration, presumably it can allocate straight into the 64-bit address space, so no more resource errors for those people who suffer them (I have never had such issues with Thunderbolt).
(Speculation only) - In terms of performance, it might remove a little latency or apply some optimisations here and there. But nothing substantial like altering the spec to actually allow more bandwidth.

I am hoping it can make it easier to make add-in cards work with unsupported platforms.

Even most Intel people do not seem aware of the 22Gbps limitation. Hopefully we can remove that limitation by altering NVM firmware and/or the Linux driver. If the Windows driver needs altering, it cannot be done, as the Windows driver is not open source, and any modified driver will presumably need WHQL signing.

I hope eventually the dedicated GPUs can have Thunderbolt ports in them (so far there is one with USB-C, and nobody knows for sure if it has a USB controller behind the port (or if it is just DisplayPort alt-mode). They do not need PCIe 3.0 x16. If Thunderbolt 3 is enough for most times, then the full PCIe 3.0 x4 with no Thunderbolt bottleneck would be even faster, so I dare say PCIe 3.0 x8 is enough, so they have enough bandwidth left over for some Thunderbolt ports.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
karatekid430
(@karatekid430)
Estimable Member
Joined: 2 years ago
 

@4chip4 If you look here, you can get motherboards which allow the Thunderbolt add-in card in a CPU PCIe slot:  http://asrock.pc.cdn.bitgravity.com/Manual/Thunderbolt%203%20AIC.pdf

I have the Asrock Z270M-Extreme4 for Thunderbolt AIC experimentation (piece of crap other than being Micro ATX and having the Thunderbolt AIC slot). I have so far tested the Asrock, Gigabyte and MSI add-in cards, and they all worked. I do not have the Asus AIC as it has only one port. So despite them not owning up to it or supporting it, it at least seems that they are fairly universal.

If you want a laptop with this, well that is difficult.... Have a look at the output of lspci -vt and lspci on Windows with pciutils for Windows, on my Dell 9370 i7-8650U (arguably the best eGPU candidate laptop so far):

-[0000:00]-+-00.0 Intel Corporation Device 5914
+-02.0 Intel Corporation Device 5917
+-04.0 Intel Corporation Skylake Processor Thermal Subsystem
+-14.0 Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller
+-14.2 Intel Corporation Sunrise Point-LP Thermal subsystem
+-15.0 Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0
+-15.1 Intel Corporation Sunrise Point-LP Serial IO I2C Controller #1
+-16.0 Intel Corporation Sunrise Point-LP CSME HECI #1
+-16.3 Intel Corporation Device 9d3d
+-1c.0-[01]----00.0 Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader
+-1c.2-[02]----00.0 Intel Corporation Wireless 8265 / 8275
+-1c.4-[03-6d]----00.0-[04-6d]--+-00.0-[05]----00.0 Intel Corporation JHL6540 Thunderbolt 3 NHI (C step) [Alpine Ridge 4C 2016] | +-01.0-[06-38]----00.0-[07-38]--+-01.0-[08]--+-00.0 Advanced Micro Devices, Inc. [AMD/ATI] Fiji [Radeon R9 FURY / NANO Series] | | | \-00.1 Advanced Micro Devices, Inc. [AMD/ATI] Fiji HDMI/DP Audio [Radeon R9 Nano / FURY/FURY X] | | \-04.0-[09-38]----00.0 Intel Corporation DSL6540 USB 3.1 Controller [Alpine Ridge] | +-02.0-[39]--
| \-04.0-[3a-6d]----00.0-[3b-6d]----01.0-[3c]----00.0 Toshiba America Info Systems Device 0116
+-1d.0-[6e]----00.0 Toshiba America Info Systems Device 0116
+-1f.0 Intel Corporation Device 9d4e
+-1f.2 Intel Corporation Sunrise Point-LP PMC
+-1f.3 Intel Corporation Device 9d71
\-1f.4 Intel Corporation Sunrise Point-LP SMBus

00:00.0 Host bridge: Intel Corporation Device 5914 (rev 08)
00:02.0 VGA compatible controller: Intel Corporation Device 5917 (rev 07)
00:04.0 Signal processing controller: Intel Corporation Skylake Processor Thermal Subsystem (rev 08)
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)
00:15.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 (rev 21)
00:15.1 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #1 (rev 21)
00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)
00:16.3 Serial controller: Intel Corporation Device 9d3d (rev 21)
00:1c.0 PCI bridge: Intel Corporation Device 9d10 (rev f1)
00:1c.2 PCI bridge: Intel Corporation Device 9d12 (rev f1)
00:1c.4 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1)
00:1d.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #9 (rev f1)
00:1f.0 ISA bridge: Intel Corporation Device 9d4e (rev 21)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)
00:1f.3 Audio device: Intel Corporation Device 9d71 (rev 21)
00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)
01:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader (rev 01)
02:00.0 Network controller: Intel Corporation Wireless 8265 / 8275 (rev 78)
03:00.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
04:00.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
04:01.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
04:02.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
04:04.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
05:00.0 System peripheral: Intel Corporation JHL6540 Thunderbolt 3 NHI (C step) [Alpine Ridge 4C 2016] (rev 02)
06:00.0 PCI bridge: Intel Corporation DSL6540 Thunderbolt 3 Bridge [Alpine Ridge 4C 2015] 07:01.0 PCI bridge: Intel Corporation DSL6540 Thunderbolt 3 Bridge [Alpine Ridge 4C 2015] 07:04.0 PCI bridge: Intel Corporation DSL6540 Thunderbolt 3 Bridge [Alpine Ridge 4C 2015] 08:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Fiji [Radeon R9 FURY / NANO Series] (rev ca)
08:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Fiji HDMI/DP Audio [Radeon R9 Nano / FURY/FURY X] 09:00.0 USB controller: Intel Corporation DSL6540 USB 3.1 Controller [Alpine Ridge] 3a:00.0 PCI bridge: Intel Corporation JHL6340 Thunderbolt 3 Bridge (C step) [Alpine Ridge 2C 2016] (rev 02)
3b:01.0 PCI bridge: Intel Corporation JHL6340 Thunderbolt 3 Bridge (C step) [Alpine Ridge 2C 2016] (rev 02)
3c:00.0 Non-Volatile memory controller: Toshiba America Info Systems Device 0116
6e:00.0 Non-Volatile memory controller: Toshiba America Info Systems Device 0116

This is with an Aorus Gaming Box with AMD R9 Nano inside, on port 1, and a Dell 512GB Thunderbolt 3 SSD attached to port 2 (exact same M.2 drive inside as the laptop).

It is hard to be sure exactly how it is attached, we see it attached to Sunrise Point LP root port 5. But afaik, the CPUs do not have a separate chipset.... yet here it looks like there is a chipset. Maybe it is built into the same silicon die. But if that is the case, what is the point? They may as well use that die space to make more native CPU lanes and just attach the Wi-Fi module and PCIe card reader from there.... They do not need SATA because it has M.2 NVMe and nobody in their right mind would downgrade it to SATA.  Either way, I think Intel needs to take a spoonful of minimalism and get rid of garbage that is not needed. If their CPU can output 2x PCIe x1 (Wi-Fi and card reader) and 2x PCIe x4 (Thunderbolt and M.2), or ideally, 3x PCIe x4 (2x Thunderbolt and M.2), then they can get rid of the idea of a chipset.... Either way, that is less than 16 lanes total. This i7-8650U might not be a HQ or HK-branded chip, but it's as fast as the i7-6820HK in the top-end MacBook Pro 2016, with a third of the TDP. This means one of two things: a) what were they doing with the 45W TDP of the i7-6820HK? Wasting power to achieve nothing? Or b) they surely have some extra room in a 15W chip to add some more PCIe lanes, particularly if this allows for dropping the chipset to save some power there.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
karatekid430
(@karatekid430)
Estimable Member
Joined: 2 years ago
 

pcie kblr u

From page 170 of:  https://www.intel.com/content/dam/www/public/us/en/documents/datasheets/7th-gen-core-family-mobile-u-y-processor-lines-i-o-datasheet-vol-1.pdf

Well, it seems like all the PCIe lanes are used, unfortunately. Still unclear whether or not it counts as being attached directly to the CPU. It is using root port 5 for Thunderbolt, meaning PCIe Controller #2. Maybe they are technically attached to the CPU, but not by primary PCIe controller. I do not know what performance penalty is incurred. One way to look at it is if they were lower performance, you would think they would put the Thunderbolt or M.2 on #1 and move the Wi-Fi and card reader to #2 or #3.

I also wonder why they need multiple PCIe controllers.... why not a single x16 link with passive bifurcation support? Maybe the chips that become Y-branded ones have a silicon fault in one of the controllers and this allows them to disable it and still sell the chip.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote