6

DIY Thunderbolt eGPU with EXP GDC TH3P4 and 3D-printed chassis

 1 year ago
source link: https://dancharblog.wordpress.com/2023/03/27/diy-thunderbolt-egpu-with-exp-gdc-th3p4-and-3d-printed-chassis/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Introduction

Even though I design and manufacture accessories for laptop computers, I still prefer desktop PCs. I just like to get comfortable at a proper desk with an ergonomic keyboard, mouse, and all my stuff which stays put. My desktop PC is nothing special, its something I’ve upgraded modestly over the years and currently has an AMD Ryzen R5 3600, 32GB 3200MT/s ram, and a Radeon RX 6600 GPU. While not the best specs, it is a decent mid-range PC suitable for my CAD work, 1440p gaming (mid settings), and writing on my blog of course 🙂 But in my workshop, I don’t have room for – nor can I justify the expense of a whole desktop PC. So I use one of the laptops that I purchased for product validation and testing

It happens to be a really nice Surface Laptop Studio that I’ve had since launch day in September 2021. At the time, I wasn’t sure if I really needed an NVIDIA GPU so I opted for the base model with an Intel Core i5, 16GB ram and integrated Intel Xe GPU. Its decent, but not nearly as fast as my desktop PC for CAD, 3D rendering, and especially gaming. But it does have Thunderbolt which makes it possible to connect an external GPU. During the cryptocurrency rush of 2021-2022, GPUs were priced so absurdly high, I figured it wasn’t worth it. But cryptocurrency and GPU prices plummeted over the last few months, so I decided to dive in!

Rather than purchase a name-brand eGPU enclosure for ~$300+ and add a brand new $300 GPU on top of that, I wanted to see how much performance I could achieve within a ~$250 DIY budget. In particular, I wanted to see if I could match or exceed the performance of the high-end Surface Laptop Studio which comes with the Nvidia Quadro RTX A2000 or RTX 3050ti, a laptop that costs >$1000 more than what I paid for my base model.

Gathering parts

Thunderbolt adapter

The first step was figuring out how to connect a PCIe GPU to the USB-C/Thunderbolt port on the laptop – the egpu.io website was quite helpful. I purchased the EXP GDC TH3P4 Thunderbolt “dock” via Aliexpress for $115. Newer versions of this “dock” are available on eBay as well. I chose it because it is a barebones board with two Thunderbolt ports to support daisy-chaining, a PCIe slot, and dual power supply connectors – barrel jack for a power brick but also an adapter to use a regular ATX power supply. Also, it is one of the few boards that is based around the Intel “Tamales 2” JHL7440 controller module. JHL7440 permits ~9% more PCIe protocol tunneling bandwidth (24Gb/s vs 22Gb/s) compared to older JHL6xxx chips so in theory, it ought to perform better than typical Thunderbolt eGPUs.

img_3496.jpg?w=1024Unboxing EXP GDC TH3P4img_3509.jpg?w=1024Powder-coated steel mounting plate with rubber bumpersimg_3510.jpg?w=1024GPU bracket screw hole on metal plate

img_3497.jpg?w=1024

Disassembly – card, white spacer, metal frame

img_3498.jpg?w=1024

PCB with JHL7440 M.2 style module

When I disassembled the Thunderbolt card, I noticed that the Intel JHL7440 chip had no heatsink on it. So I added some thermal pads on both sides of the daughterboard so at least some heat would transfer to the main card and the mounting plate. While I had it apart, I also added notches with a Dremel tool so that I could fit M4 bolts to better secure the mounting plate.

img_20230317_090831978_hdr.jpg?w=10242x 1mm pads on bottomThis image has an empty alt attribute; its file name is img_20230317_091706092_hdr.jpg4x 1mm thermal padsimg_20230317_091236909_hdr.jpg?w=1024notch cut in PCBimg_20230317_091243667.jpg?w=1024notch cut in PCBimg_20230317_091318140_hdr.jpg?w=1024notch cut in white spacerimg_20230317_091321821_hdr.jpg?w=1024notch cut in white spacer

img_20230317_092051343_hdr.jpg?w=1024

M4 screw fits

img_20230317_092056352_hdr.jpg?w=1024

M4 screw fits

My last Nvidia GPU was a Riva TNT2 that I purchased in 1999 to learn OpenGL, but I mainly used it to play Quake III. Since then, I have always used ATI/AMD GPUs. But I wanted to try team green again so I set my sights on eBay and Craigslist, and snagged a GeForce GTX 1080 for $100 – a GPU that would have cost >$500 last year during the crypto-currency craze. All it needed was some cleaning and refreshing of the thermal paste. This is a large board at 270mm long with a removeable metal bracket to bring it to the full 312mm permitted by the PCIe specification. It is a standard height of~ 110mm but has an upward facing 8-pin PCIe power socket which needs ~20mm extra clearance.

img_3837-edited.jpg

Power supply

Next on the list was a power supply (PSU). Since the GTX 1080 is quite large. I saw no need to get a compact FlexATX or SFX model. I had a 15-year-old 380-watt Antec EarthWatts ATX PSU collecting dust. It tested OK on the bench, but I opened it up just to see the state of the components. One of the capacitors on the 12V rail was bulging (a common issue), so I bought some new caps (16V, 1000uF) and soldered one in. Although the PSU specs state there are two separate 12V rails, there is only one and it can drive 27 amps which is more than enough for the Thunderbolt card, charging a laptop, and a ~200-watt class GPU like a GTX 1080. But I don’t think I would be able to run a 3080 or better model. For that I’d need to step up to a 500-watt PSU at least.

image-2-edited-1.png?w=1024

Antec EA-380 spec label

image-1-edited-1.png?w=1024

Antec EA-380 rear

img_3847.jpg?w=1024

New capacitor

Chassis

Finally, I needed a chassis to hold everything together. Being a 3D-printing and CAD enthusiast, I designed my own. The requirements were simple:

  • Two-piece design that fasten together with clips or screws
  • Fits standard size ATX PSU with either front->rear or side->rear ventilation
  • Fits full-height, full-length, 2.5X width GPU with clearance for PCIe power cables
  • PSU, GPU, and Thunderbolt card should all screw into the chassis with standard PC screws or M4 nuts and bolts
  • Air intake at front/sides
  • Rear exhaust
  • Can fit a 140mm or 120mm front fan
  • Total volume under 10 liters

Below is what I came up with. I posted the plans open source: https://www.printables.com/model/429812-egpu-thunderbolt-chassis-for-exp-gdc-th3p4-atx-psu

screenshot-2023-03-21-182821.jpg?w=1024

Full chassis

screenshot-2023-03-21-185652.jpg?w=1024

Without rear cover

screenshot-2023-03-21-185749.jpg?w=1024

Without front cover

screenshot-2023-03-21-185947.jpg?w=1024

Without rear cove

Component summary

ComponentPart DescriptionFromCost with tax
Thunderbolt cardEXP GDC TH3P4Aliexpress$125
Thermal padsthermal pads 1mm, 2mm. 0.5mm variety packAmazon$15
GPUGeForce GTX 1080 Founders EditioneBay$100
Thermal pasteArctic MX4Amazon$6
Power supplyAntec EA-380salvage$0*
Capacitors16V 1000uF 105°C electrolytic Amazon$5
Chassis3D printed – 1kg PETG filament (850g used)Amazon$16
Hardware7x M4 10mm nuts and boltsAmazon$5
4x 6-32 PC screwscame with PSU0
120mm cooling fan with molex connectorAmazon$9

So, I spent ~$280 which is a little over my $250 budget, but I have lots of parts left over for other projects including the thermal pads, paste, nuts/bolts, and capacitors.

Assembly

The power supply goes in first and secures to the rear portion of the chassis with 4x 6-32 screws

img_3852.jpg?w=1024

img_3853.jpg?w=1024

2x M4x10mm bolts are installed into the TH3P4 board

img_20230317_092051343_hdr.jpg?w=1024

img_20230317_092056352_hdr.jpg?w=1024

Then the card is installed into the chassis and secured with 2x M4 nuts. It is a little difficult to tighten because one screw is covered by the power connector

img_3854.jpg?w=1024

img_3855.jpg?w=1024

Carefully slide the GPU in place and push into the PCIe slot. Secure with two screws up top. One M4 nut can be fitted to the rear of the chassis so that a third screw can secure the GPU PCIe slot plate that houses the monotor conenctors.

img_3864-1.jpg?w=1024

img_3866.jpg?w=1024

img_3857.jpg?w=1024

4x M4 nuts are installed in the interior of front chassis. These may need to be glued in place to prevent them from falling out. But if the chassis printed well, they should be lodged in place firmly without glue.

img_3860.jpg?w=1024

An optional fan is secured to the front chassis with 4x PC fan screws and connected to a power cable.

img_3859.jpg?w=1024

The two halves of the chassis are press-fit together and then secured with 4 M4x10mm bolts.

img_3861.jpg?w=1024

img_3862.jpg?w=1024

img_3863.jpg?w=1024

img_3865.jpg?w=1024

Bumpers were added to the bottom of the chassis to prevent it from scratching the table

Testing

My test rig included my Surface Laptop Studio, 2x 1080p monitors, a separate Thunderbolt dock station for more ports, plus keyboard & mouse.

img_3867.jpg?w=1024

img_3868.jpg?w=1024

img_3871.jpg?w=1024

Power

I had some issues charging my laptop with the Thunderbolt card which maxes out at 60W power delivery. It would charge for a few minutes, then stop. Sometimes it worked fine charging for an hour, but other times it didn’t. So I ended up plugging the Laptop into a regular Thunderbolt dock that could do ~85W charging, then the eGPU was daisy-chained from the dock. This impacted performance a little as you’ll see below.

With the GPU running at peak load with a mild overclock and 120% power target and no laptop charging, I saw the power meter at AC/Mains peak at ~270 watts. At a conservative 80% PSU efficiency, that is 216 watts which is exactly 120% of the GTX 1080 rated 180W TDP. With the laptop disconnected, idle power drawn from AC/Mains was ~2W because the PSU fan continued to run even with no load. Looks like I need to modify the PSU further. I’ll probably just hook it up directly to 12V and bypass the fan speed control loopt. Or I’ll wire in a separate thermostat.

Performance

Using 3DMark TimeSpy, the built-in Intel Xe GPU rating was 1328 – pretty terrible. Stepping up to the GTX 1080 daisy-chained with stock settings, I achieved 6359. Overclocking increased performance to 6682 and plugging directly into the laptop increased it a bit more to 6812. So I was able to achieve a 5X performance increase and exceed the performance of the A2000 GPU that comes on the upgraded Laptop Studio model! Achievement unlocked.

GPUCombined ScoreCPU ScoreGPU ScoreGPU perfNotes
Intel Xe1479417213281x
GTX 10806005456663594.79xdaisy-chained
stock settings
GTX 10806287471366825.03xdaisy-chained
150MHz overclock
120% power target
GTX 10806430488068125.13xdirect connect
150MHz overclock
120% power target

xe-stock.png?w=1024Intel XeThis image has an empty alt attribute; its file name is 1080-daisy-stock.pngGTX 1080 stock settings -daisy-chained1080-daisy-oc.png?w=10241080 overclocked/daisy-chained

1080-direct-oc.png?w=1024

1080 overclocked plugged directly into laptop

I haven’t had much time to do gaming and I don’t know if I’m actually achieving 5x better performance. But I like it so far!

Conclusion

While the results were pleasing and I certainly accomplished the goals I set out to, this was a lot of effort just to get a GPU in my workshop. This probably doesn’t make sense for most people and it’s not a project I would generally recommend. But it was fun! If I were to do it again, I would definitely upgrade to the newer EXP GDC TH3P4G3 card which includes a USB 3.0 port in addition to the Thunderbolt ports.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK