Share:

PCI Express vs. Thunderbolt - How much performance drop of your GPU you will have if you put it in eGPU  

Page 3 / 3
  RSS

precision01
(@precision01)
Eminent Member
Joined: 2 years ago
Posts: 30
July 18, 2017 7:35 pm  

Great benchmarks, enjoy.

Did you manage to do the same tests with a GTX 1070 ou GTX 1080?

I'm curious to see the performance drop with the faster pascal cards. Some users are saying that the impact is way higher on GTX 1070.

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


ReplyQuote
pewpewfish
(@pewpewfish)
Active Member
Joined: 2 years ago
Posts: 8
July 18, 2017 9:39 pm  
Posted by: ImDe

Guys, can you explain why there is no difference between thunderbolt 1,2,3 on external monitor at 4k in your tests? (you show only 20% drop Vs desktop PCIe) 

 

And how does it work with thunderbolt 3 with jhl6240 (PCIE 3.0 x2) on external 4k? Remaining bandwith, overall speed like with thunderbolt 2?

I'd like to know this too. I'm in the market for a new laptop but can't get behind the new MBP 15's keyboard. If I can get a TB2 version and still get the same results I'd be pretty happy since I get a good keyboard too!

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


ReplyQuote
egpumac
(@egpumac)
New Member
Joined: 2 years ago
Posts: 2
August 14, 2017 7:12 pm  

I have a Mid-2012 Macbook Pro with ThunderBolt 1 (10gbps) and I am thinking about an egpu (Akitio) to play Oculus Rift VR. Is that a possible setup?

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


ReplyQuote
ZPERO
(@zpero)
New Member
Joined: 2 years ago
Posts: 1
September 21, 2017 9:49 pm  

Nice job doing all that testing!

 

I have a Lenovo Y410P and I would like to know if it would be possible for me to run an eGPU and display to the internal screen with my laptop. I have no TB port, but I do have an ultrabay that runs at PCIe 3.0 x8 (although I would like someone to confirm that for me). So in theory I think that should be twice the bandwidth as a TB3 port right? I would need some kind of adapter, as well as the removal of the DVD drive, which sits in the ultrabay from he factory. 

 

Thanks,

ZPERO

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


ReplyQuote
Yukikaze
(@yukikaze)
Prominent Member Moderator
Joined: 2 years ago
Posts: 906
September 21, 2017 10:31 pm  

There is a guy who goes by Gerald who managed to get an ultrabay eGPU adapter put together for the Y510p. It sold on ebay about a year back, or maybe a bit more. Due to BIOS block on NV cards, you had to use an AMD card with it, but it worked just fine. He has a new batch up for sale right now. The cost is 80 EUR + 20 EUR for shipping.

You can register at his doodle here.

I do not know if it works with a Y410p as well, but you can reach out to him and ask in the comments.

My eGPU Zoo - Link to my Implementations.
Want to output [email protected] out of an old system on the cheap? Read here.
Give your Node Pro a second Thunderbolt3 controller for reliable peripherals by re-using a TB3 dock (~50$).

"Always listen to experts. They'll tell you what can't be done, and why. Then do it."- Robert A. Heinlein, "Time Enough for Love."


ReplyQuote
SE12897
(@se12897)
Trusted Member
Joined: 2 years ago
Posts: 56
April 30, 2018 7:04 pm  

So when we say internal display causes FPS drops is it really because of the data transfer back over TB3? Isn't TB3 and PCIe Full Duplex? Ethernet is full duplex so that means 2gbps when both directions are being utilized.. Minus overhead. The two shouldn't interfere with each other.

I always figured it was one of two things.. 
1) encoding and decoding full duplex data on the TB3 chip is causing the slow down
2) Slow ram speeds.

I remember when I bought my 13R3 with a single stick of 8GB of ram. And games performed worse when using optimus when on external displays. (x8 3.0 link) When I jumped up to dual channel 32GB, the games performed only slightly slower. 4% slower. 

When not in games, apps like svp (the 60 fps video interpolation software) performed awful when using single channel. 

In other words, I think Dual and single channel ram could make a difference in internal display performance. I wish I still have my 13R3 for testing this on eGPUs..

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


ReplyQuote
SE12897
(@se12897)
Trusted Member
Joined: 2 years ago
Posts: 56
April 30, 2018 7:07 pm  
Posted by: pewpewfish
Posted by: ImDe

Guys, can you explain why there is no difference between thunderbolt 1,2,3 on external monitor at 4k in your tests? (you show only 20% drop Vs desktop PCIe) 

 

And how does it work with thunderbolt 3 with jhl6240 (PCIE 3.0 x2) on external 4k? Remaining bandwith, overall speed like with thunderbolt 2?

I'd like to know this too. I'm in the market for a new laptop but can't get behind the new MBP 15's keyboard. If I can get a TB2 version and still get the same results I'd be pretty happy since I get a good keyboard too!

It's because the FPS is so low it's under the threshold of the performance impact TB3 has.

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


ReplyQuote
ikir
 ikir
(@ikir)
Prominent Member
Joined: 2 years ago
Posts: 794
May 2, 2018 6:47 pm  

16-4% performance drop with Thunderbolt 3 is very reasonable. Pretty cool.

eGPU.it
MacBook Pro 2018 Touch Bar i7 quad-core 2.7Ghz - 16GB RAM - 512GB PCIe SSD
my Mantiz Venus extreme mod with Sapphire Nitro+ RX Vega 64
Testing Radeon VII on macOS 10.14.5 beta


ReplyQuote
Donwey
(@donwey)
Active Member
Joined: 9 months ago
Posts: 6
December 6, 2018 8:03 am  

So reading about this topic here i came to conclusion that since i have aorus box gtx1080 and would like even more performance on 1440p it would be better to buy a better laptop to fully utilize the gtx 1080 rather than buying new rtx 2080. But the question is, when could we see a big performance improvement with eGPUs? Will the coming thunderbolt 4 help? I guess not since we are all using external monitors and with any ver. of thunderbolt they show same 20%performance drop. When could we see more performance from eGPUs? 

Dell XPS 15 9560 @ I7 7700HQ + Aorus Gaming Box GTX 1080 + External Monitor 1440p


ReplyQuote
joevt
(@joevt3)
Reputable Member
Joined: 2 years ago
Posts: 340
December 6, 2018 1:26 pm  

A new version of Thunderbolt would be required for more performance from eGPUs. Another option is new graphics cards that are better at transmitting data over narrow pipes. Maybe new drivers could do that with existing graphics cards. The idea would be to compress the data before sending it through the narrow pipes and then uncompress it at the other end. The time for the compress/decompress process needs to be less than the time it would take to transmit that data. Maybe AMD XConnect does this but all I see is marketing speak. Maybe AMD XConnect is just drivers that are less dumb - supporting hot plug/surprise removal like they should have always done (Thunderbolt is not the first interface to support hot plug).

About Thunderbolt 4 : There are a couple options:
1) Increase bandwidth per lane from the current 20 Gbps. That's kind of high already. Consider PCIe 4.0 is only 16 GT/s. PCIe 5.0 might be 32 GT/s.
2) Add another lane to the existing two lanes (an increase of 50%). Maybe Thunderbolt 3 could use a special USB-C cable that replaces the USB 2.0 lines of USB-C with higher performance lines. This is what VirtualLink does, but they only go up to 10 Gbps.

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


ReplyQuote
adamk77
(@adamk77)
Eminent Member
Joined: 2 months ago
Posts: 21
April 20, 2019 7:35 pm  
Posted by: P-Mac
Posted by: enjoy

I told that many times...

I'm trying to prevent misinformation and incorrect conclusions being drawn by your barrage of redundant data, when the fact of the matter is that eGPU performance delta is a complex issue.

This pretty little list of resolutions vs. GPUs shouldn't be touted as some definitive reference of real-world eGPU gaming performance, for a few reasons:

  1. You are not using a real-world gaming test, playing actual games for the majority of your testing data, therefore you can't draw a complete conclusion without looking at the whole story. Gaming with modern, large texture-set games utilizes the PCIe bus in ways and amounts that vary significantly compared to Heaven, and all your list does is tell us that we can sit there and watch Heaven all day at those resolutions. In real-world gaming scenarios, performance loss via eGPU is a more complicated issue.
  2. You aren't listing refresh rate, which changes computational requirements significantly, and also can affect the amount of which the TB bottleneck is responsible for the eGPU performance delta.
  3. This list is basically preaching to the choir since the relative performance of the listed cards is already a known factor.

For example, playing The Division (4K 60Hz, maxed settings, vsync adaptive), there are situations in which my Titan is:

  • Not bottlenecked at all - simple scene, 60fps is being achieved, and as a result the card is not at full utilization
  • TB bottlenecked - moderately complex scenes, but traveling around the game world from point A to point B. Card utilization isn't near 99%, meaning the GPU is spending a lot of time idle waiting for textures or data to be sent to it for processing
  • CPU bottlenecked - complex scenes (e.g. gunfights in wide open spaces) with a lot of particles, AI, and physics effects - GPU utilization in the 90's, moderate bus utilization, but CPU melting as it tries to set up these complex scenes with a lot of game overhead
  • GPU bottlenecked - very complex scenes (lots of volumetric fog, foliage with subsurface scattering and shadows) with little to no AI/particles/physics - GPU utilization at 99%, bus and CPU usage being moderate. This is when the performance delta is the least, compared to desktop-installed equivalent cards. This also happens to be the workload in a lot of GPU benchmarks (3DMark graphics, Heaven, Valley, SP)

A 10-20% performance loss with an eGPU is a best-case scenario, not an average as far as gaming performance is concerned. The answer to someone asking "which GPU should I put in my eGPU" should always be "what are you looking to do with it?"

The resolution someone plays at, the framerate they are targeting, their Thunderbolt version, their CPU, and even the specific games that they play can have a huge impact on which GPU they should be looking at and what kind of performance they will experience. 

---

The reason I am so interested in this topic is because I've seen the 10-20% number being thrown around since I first got my eGPU setup running (around june 2016), and in that time, I have learned a lot about the different bottlenecks in a laptop + eGPU system with how it relates to real-world gaming performance, because, well... I play games with my computer, not solely use it for benchmarks. I've ran a 980, a 980 Ti in my eGPU setup before. Overclocked GPUs, BIOS mods, thermal paste replacements, underclocking & undervolting the CPU for thermal headroom...I love tinkering and if there's a setting that could potentially benefit gaming performance, you can bet I've touched it in my quest to understand how our unique eGPU-based systems deal with the workloads of modern games.

The problem with the "oh cool the GPU will basically be 10-20% slower than desktop-installed" conclusion is this: I was fortunate enough to upgrade to a TITAN Xp in my eGPU. You'd figure "10-20% loss" from the most powerful GPU out right now would be totally fine to handle 1080p Ultra gaming, right? 

In DOOM, I've seen FPS dips down into the 60s and 70s, and I play at 144Hz since it's a twitch-style shooter. ROTTR was barely better of an experience than my old 980 Ti. VR (90fps) in Elite Dangerous & DIRT Rally is a mixed bag. The Division (60Hz), as outlined above, is also a mixed bag...but Elite Dangerous on the 1080p display runs fine at 4K DSR 60Hz with barely any dips below 60fps. GTA V has huge framerate swings and dips, but DSR 4K helps mitigate that. 

A modern game is a much different beast from a focused benchmark and that's why I caution against drawing a general conclusion about gaming performance when the majority of data that we are drawing the conclusion from is benchmark-based.

This reply is so spot on.  I was banging my head against the wall wondering why I was getting 60 FPS in 1440p in games like Division 2 and Rise of the Tomb Raider, but I was only getting 30-40 FPS in a game like Monster Hunter World. 

I am seeing both CPU and GPU utilization around 70%, which means they're just idling waiting for data to do something with it. It's being constrained by the Thunderbolt 3 bandwidth. 

I'm still a bit perplexed as why this would still be the case if I set the resolution to something ridiculously low like 640x480. I would assume that there isn't much texture data to push around at this resolution so it should not be TB bottle-necked. If @p-mac is still around, I'd love to get your insights on what you think maybe going on.

 2018 Mac Mini i7, 32GB RAM, 512GB SSD, 10Gbit ethernet
 Sonnet eGFX Breakaway Box 350W with Sapphire Vega 56 Pulse
https://www.growthchart.us


ReplyQuote
andyegoo
(@andyegoo)
Active Member
Joined: 10 months ago
Posts: 7
April 22, 2019 12:07 pm  

Hello everyone noticed that thunderbolt 1 allows you to comfortably play at 30 fps in 4k resolution in forza 4 graphics settings are high, if you set 60 fps, micro friezes start. Is this a limit of 10 gigabits?


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


ReplyQuote
P-Mac
(@p-mac)
Trusted Member
Joined: 2 years ago
Posts: 59
April 26, 2019 2:48 am  
Posted by: adamk77
I'm still a bit perplexed as why this would still be the case if I set the resolution to something ridiculously low like 640x480. I would assume that there isn't much texture data to push around at this resolution so it should not be TB bottle-necked. If @p-mac is still around, I'd love to get your insights on what you think maybe going on.

@adamk77, Hi...yeah, it's been a while since I've been around these parts. Still using an eGPU (Vega 64 + Alphacool Eiswolf watercooler / Akitio Node...gotta update my post) but got disheartened about posting here due to frustrations with people spreading misinformation without doing their part researching what exactly was causing their issues.

I currently believe that this post (along with the performance benchmarks @theitsage meticulously performed in the quoted post) paints the best picture about potential bottlenecks using an eGPU. From what I've been able to glean from that thread:

  • You do not actually get full PCIe3 x4 bandwidth of 32Gbps as you would assume, because Thunderbolt 3 reserves 18Gbps out of the 40 available, leaving only 22Gbps for the eGPU.
  • Thunderbolt encoding/decoding causes an additional performance deficit, independent of bandwidth constraints. A good example to see this in action is @theitsage's Superposition results, with 64.6 FPS (x16 internal), 64.7 (x4 internal), 64.4 (x2 internal) and 55.3 (TB3). The fact that the x16, x4, and even x2 (!!) internal results are within margin of error suggests to me that this particular test is not bandwidth-constrained, so this—combined with the TB3 result being lower—means that logically the only other thing to blame here is Thunderbolt encoding overhead.

I haven't played Monster Hunter World, so I don't have any personal experience to comment with, that being said:

CPU bottlenecking can still occur at utilization levels below 100%; the game may simply not be multi-threaded enough (Crysis 1 comes to mind) and the host computer (usually a laptop)'s cooling may not be able to sustain high boost clocks, causing the CPU to bottleneck the game's maximum framerate due to poor clockspeed affecting single-core performance. You may also truly be bandwidth-bottlenecked, more and more modern games are starting to leverage PCIe bandwidth to stream textures & shaders (i.e. for in-game areas the player may travel to) and this can cause significant frame drops. 

I would assume that there isn't much texture data to push around at this resolution so it should not be TB bottle-necked.

Display resolution (aka rendering resolution, for games with built-in scaling) is independent of texture resolution. You can drag a 1080 Ti down to 30fps at 1080p if you slam it with a heavy ray tracing workload like the Star Wars Reflections GPU demo...the point I'm getting to is that your resolution may not be the primary factor in capping your performance if the card is still doing heavy shading work alongside constantly streaming high resolution textures in.

For me, Battlefield V is one of the worst offenders, performance is all over the place sometimes dropping to the 30s even on a Vega 64 and no obvious CPU bottleneck. Sometimes, the CPU will bottleneck (very high CPU util, low GPU util) in scenes, sometimes it'll be an "unclear bottleneck" which I generally attribute to TB3 bandwidth or encoding, and sometimes it will run at full tilt and I can get my monitor's full 100fps. 

The fact that modern games are moving away from the old "load EVERYTHING into the GPU then start playing" paradigm is primarily the reason I've stopped trusting synthetic benchmarks completely for determining eGPU performance for gaming, since they all generally work old-school like that. They're still great for isolating the TB3 encoding bottleneck itself, but one look at how the internal PCIe bandwidth changes affect fps on @theitsage's benchmark table vs. their actual game tests shows just how much texture streaming relies on PCIe bandwidth.

2016 15" MacBook Pro + Vega64 w/ Eiswolf GPX Pro LC
---
MAG341CQ 34" Ultrawide // Logitech G900 & HyperX Alloy FPS Pro (MX Blues) // Scarlett 2i4 + Yamaha HS7


adamk77 and theitsage liked
ReplyQuote
adamk77
(@adamk77)
Eminent Member
Joined: 2 months ago
Posts: 21
April 28, 2019 3:06 pm  
Posted by: P-Mac

Display resolution (aka rendering resolution, for games with built-in scaling) is independent of texture resolution. You can drag a 1080 Ti down to 30fps at 1080p if you slam it with a heavy ray tracing workload like the Star Wars Reflections GPU demo...the point I'm getting to is that your resolution may not be the primary factor in capping your performance if the card is still doing heavy shading work alongside constantly streaming high resolution textures in.

For me, Battlefield V is one of the worst offenders, performance is all over the place sometimes dropping to the 30s even on a Vega 64 and no obvious CPU bottleneck. Sometimes, the CPU will bottleneck (very high CPU util, low GPU util) in scenes, sometimes it'll be an "unclear bottleneck" which I generally attribute to TB3 bandwidth or encoding, and sometimes it will run at full tilt and I can get my monitor's full 100fps. 

The fact that modern games are moving away from the old "load EVERYTHING into the GPU then start playing" paradigm is primarily the reason I've stopped trusting synthetic benchmarks completely for determining eGPU performance for gaming, since they all generally work old-school like that. They're still great for isolating the TB3 encoding bottleneck itself, but one look at how the internal PCIe bandwidth changes affect fps on @theitsage's benchmark table vs. their actual game tests shows just how much texture streaming relies on PCIe bandwidth.

Thanks for this awesome response. It was highly educational.

I think that this (built-in scaling) is what's going on with Monster Hunter World. I'm pretty sure I am being TP3 bandwidth constrained.

 2018 Mac Mini i7, 32GB RAM, 512GB SSD, 10Gbit ethernet
 Sonnet eGFX Breakaway Box 350W with Sapphire Vega 56 Pulse
https://www.growthchart.us


ReplyQuote
sxr71
(@sxr71)
Active Member
Joined: 8 months ago
Posts: 5
April 28, 2019 4:39 pm  

How about give us our full 40gbps for a start? I was so disappointed to learn about reserved bandwidth for DisplayPort. I’m obviously not using it with an EGPU so why not give us a mode that just takes that bandwidth back? 

I understand intel wants to open source the standard and then maybe we might get firmware to do it?

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


ReplyQuote
theitsage
(@itsage)
Famed Member Admin
Joined: 2 years ago
Posts: 3928
April 28, 2019 5:49 pm  

The ideal situation is to have a Thunderbolt Firmware Baking Tool. Users get to select max bandwidth and Power Delivery.

Best ultrabooks for eGPU use

eGPU enclosure buying guide

94 external GPU build guides


ReplyQuote
ataylor
(@ataylor)
Active Member
Joined: 9 months ago
Posts: 18
May 13, 2019 10:41 pm  

Had a question. for those of us using say 3d rendering application.. how does that effect the math.. i.e octanebench. etc. Is it better to use the monitors hooked up directly to the Dedicated GPU "amd" and have say dual GTX cards headless doing CUDA stuff?
i don't currently have loopback adapters on those and just boot with my 2 external monitors connected to the radeon card of the macbookpro i9. 

2018 MacBookPro 15 in. /w Touchbar - i9 - 32gig ram - 1080 Aorus 1080 Gaming Box - Sonnet-Breakaway550 with GTX 1080 - Still need to get both of the GTX 980TI working for 4 GTX total cards


ReplyQuote
P-Mac
(@p-mac)
Trusted Member
Joined: 2 years ago
Posts: 59
May 15, 2019 1:02 am  
Posted by: ataylor

Had a question. for those of us using say 3d rendering application.. how does that effect the math.. i.e octanebench. etc. Is it better to use the monitors hooked up directly to the Dedicated GPU "amd" and have say dual GTX cards headless doing CUDA stuff?
i don't currently have loopback adapters on those and just boot with my 2 external monitors connected to the radeon card of the macbookpro i9. 

Computational workloads tend to have the least amount of performance loss as nearly all of the work is done “on the card” and the thunderbolt bus isn’t being thrashed too hard. 

Here’s an analogy: 

Pretend you have a calculator and are ready to do math problems, you’re the GPU. A video game workload with heavy streaming and bus usage would be like if there was a list of different math problems for you to solve, but you’re forced to listen to a friend (the CPU and game engine) tell you each problem one at a time over a walkie-talkie (the Thunderbolt bus). You’re gonna solve them a lot slower than you probably could, because you’re spending a lot of time waiting for your friend to tell you the next problem. 

In this analogy, computational workloads like 3D rendering would be as if you simply got a math test handed to you on a piece of paper; you can see all the problems all at once and can work through them as fast as you can. 

Most synthetic benchmarks like 3DMark, or especially Superposition, are like the latter. Everything the GPU will need to do its math is fully loaded onto it before it begins its work (for the most part)...that’s why you see worse performance loss in games vs. synthetics or computational workloads.

EDIT: to answer your monitor question, no, having a monitor attached to the eGPU shouldn’t affect the speed at which it does its workload since it’s not a video game and not trying to output a frame buffer directly to a monitor. 

This post was modified 1 week ago

2016 15" MacBook Pro + Vega64 w/ Eiswolf GPX Pro LC
---
MAG341CQ 34" Ultrawide // Logitech G900 & HyperX Alloy FPS Pro (MX Blues) // Scarlett 2i4 + Yamaha HS7


ReplyQuote
ataylor
(@ataylor)
Active Member
Joined: 9 months ago
Posts: 18
May 16, 2019 8:55 pm  

I as more wondering how NOT having the monitors connected to the egpu's but directly internal via tb3 adaptor will effect things. i.e will i not get full speed out of the gtx cards when no monitor is connected to them? I assume it won't make a difference for "compute" tasks.

This post was modified 6 days ago

2018 MacBookPro 15 in. /w Touchbar - i9 - 32gig ram - 1080 Aorus 1080 Gaming Box - Sonnet-Breakaway550 with GTX 1080 - Still need to get both of the GTX 980TI working for 4 GTX total cards


ReplyQuote
Page 3 / 3