ALERT: half H2D performance issue on TI83 TB3 enclosures (Node, Venus, Devil Box...
 
Notifications
Clear all

ALERT: half H2D performance issue on TI83 TB3 enclosures (Node, Venus, Devil Box, XG Station 2)  

 of  30
  RSS

itsage
(@itsage)
Founder Admin
Joined: 5 years ago
 

@alan49 As you had narrowed down, the culprit is with the eGPU enclosure's firmware. KFA2 should be able to produce a new firmware to up the H2D bandwidth and provide a way for customer to update the firmware. This has been the process with all enclosures that suffered H2D issue.

LinkedIn | Twitter | Facebook | Youtube | Instagram
 
external graphics card builds
best laptops for external GPU
eGPU enclosure buyer's guide

 
2020 Gigabyte Z490 Vision D [10th,8C,K] + RTX 2080 Ti @ 32Gbps-TB3 (AORUS Gaming Box) + Win10 2004 [build link]  


ReplyQuote
Alan49
(@alan49)
Active Member
Joined: 3 years ago
 

I still send a message, I really hope an answer.
I try to update via the utilities of other brands but of course they detect that it is not the right brand.

my message

Hello,

Please, I really need help with the galaxy / kfa2 product eGPU thunderbolt 3 external graphics card 1060 6gb.
If I could talk with an engineer about the bandwidth problem that affects your product.
All other brands of eGPU offers a firmware update of the controller thunderbolt texas instrument. To no longer have the problem called half-H2D. The Host to Device connection is only active at 50% this is a big problem. The card is not at full power. I have only 3-4 days if I have no answer I would have to return the product or I bought them. And choose an Akitio model.
Please, I need an updated firmware.
Tell your engineer to visit the egpu.io website and look for the H2D problem.

Thank you
have a good day

To do: Create my signature with system and expected eGPU configuration information to give context to my posts. I have no builds.

.

ReplyQuote
nando4
(@nando4)
Noble Member Admin
Joined: 5 years ago
 

@alan49, are you familiar with Linux? As you've already tried to flash other vendor firmware, perhaps try under Linux? The following Linux method to do that from here may help.

Upgrading the firmware under Linux

Thunderbolt has a standardised interface to update the firmware on chipsets at either end of the link. Luckily for us Linux exposes this interface directly under /sys allowing firmware updates with no special tools required. Care has been taken to allow recovery in the event of a corrupt firmware upgrade and firmware images are checksummed to ensure that only good firmware is booted, reducing the chances of causing permanent damage to your machine or devices.

Thunderbolt devices under Linux have 2 separate firmware areas, The Active firmware area (nvm_active1) and the non-active firmware area (nvm_non_active1) only the non-active area can have firmware uploaded to it. Once this area has been written to, the firmware can be authenticated after which the device automatically reboots and boots into the new verified firmware.

on my system, The AORUS shows up at /sys/bus/thunderbolt/devices/0-0/0-1 and the Thunderbolt port at /sys/bus/thunderbolt/devices/0-0/, as you can see the AORUS device is in a directory under the Thunderbolt host device indicating where it is plugged in (this becomes helpful if you have multiple devices connected).

In these directories you can see information relating to the device such as its name, key and who built it (device_name, key and vendor*) as well as the nvm_* directories corresponding to the firmware

To perform the update procedure grab the latest firmware version from reddit/Gigabyte. As I was interested in increased PCIe/GPU performance I selected the H2D firmware which helps speed up transfers from the laptop to the device as per eGPU.io I was glad to see that Gigabyte delivered a new firmware image in a significantly faster time frame than I anticipated. I was even more encouraged when presented with a zip file that contained the raw firmware without obfuscation or embedding, allowing me to directly copy the file with minimal fuss.

Verifying the currently running firmware

It is possible to determine which firmware you are running via the nvm_version file, however in the case of the H2D vs non-H2D firmware above, these both present the same version. Luckily the running firmware can be read from memory and hashed allowing us to determine which version is running. These hashes won't match the on disk firmware versions but will allow you to differentiate between running firmwares

On my device the non-H2D version gave me the following

[Please login to see this]

While the H2D version gave me the hash shown below

[Please login to see this]

Flashing the firmware

Inside both Zip files is a '.bin' file that represents the firmware (in my case AORUS_N1070IXEB_8GD_VER10H2D.bin md5:1ed8ee21f01595efee8914e40fe638ef) upgrading was as simple as:

[Please login to see this]

After this the device disconnected, rebooted and then became visible again (after going through the authentication step above)

I then proceeded to verify the H2D bandwidth using my own H2D opencl benchmarking script but found that both firmwares provided similar numbers (2761MB/s). Due to not benchmarking pre-firmware upgrades I cannot confirm if my script is broken or if both firmwares contain the H2D fix and that the h@d firmware contains some additional tuning as per their notes on what each version is optimised for. If someone does benchmark before and after please let me know so I can update this article.

eGPU Setup 1.35    •    eGPU Port Bandwidth Reference Table

 
2015 15" Dell Precision 7510 (Q M1000M) [6th,4C,H] + GTX 1080 Ti @32Gbps-M.2 (ADT-Link R43SG) + Win10 1803 // compares M.2 vs TB3 performance inc unoptimized H-CPU BIOS [build link]  


ReplyQuote
Alan49
(@alan49)
Active Member
Joined: 3 years ago
 

Hello, thank you for your answer.
I do not have enough time and computer skills to do this test on Linux
I'm going to return mine and I ordered the aorus gaming box 1070, I receive it Tuesday normally.
If the graphics performance is the same between the XPS 13 i7-8550u and the macbook pro 13 2017 i5-7360u I'll have to make a choice between the two and it's difficult. Otherwise I leave both for a lenovo thinkpad x1 carbon 2018 HDR but my problem is that the test shows a poor quality of sound.

Thank you

To do: Create my signature with system and expected eGPU configuration information to give context to my posts. I have no builds.

.

ReplyQuote
yjchua
(@yjchua)
Eminent Member
Joined: 5 years ago
 

So even with 25.1 firmware on my Node, my late-2016 15" rMBP (460 Pro, RX 570 eGPU) is being severely throttled in H2D speeds (just 700MB/s in CL!ng).

System Information shows that the eGPU is only using PCIe lane width x1.

Screen Shot 2018 11 24 at 18.09.55
Screen Shot 2018 11 24 at 01.35.40

What exactly is wrong with my setup?

Late-2016 15" rMBP (2.9/16/1TB/460)
Akitio Node + Asus Expedition RX 570 OC, 4GB

 
2018 Mac Mini [8th,6C,B] + RX 570 @ 32Gbps-TB3 (Razer Core X) + macOS 10.14 & Win10 [build link]  


ReplyQuote
jangoloti
(@jangoloti)
Trusted Member
Joined: 3 years ago
 

Both D2H and H2D throughputs seem to be limited in your setup. On mine, D2H was 2600 MiB/s with H2D of 1160. The firmware update improved the latter to 1660, which seems to be a known issue due to some limitation to the number of PCIe lanes in use with one of the scripts in this forum. As it is not my definitive set up I will not be troubleshooting any further.

Mac Mini 2012 and 2018 i7, Mac book Pro 2016 15" with TB, eGPU Galax/KFA2


ReplyQuote
yjchua
(@yjchua)
Eminent Member
Joined: 5 years ago
 
Posted by: jangoloti

Both D2H and H2D throughputs seem to be limited in your setup. On mine, D2H was 2600 MiB/s with H2D of 1160. The firmware update improved the latter to 1660, which seems to be a known issue due to some limitation to the number of PCIe lanes in use with one of the scripts in this forum. As it is not my definitive set up I will not be troubleshooting any further.

The thing is, what actually determines the number of PCIe lanes allocated to the TB3 device?

Is it the OS that decides? Or is it dependent on hardware?

Late-2016 15" rMBP (2.9/16/1TB/460)
Akitio Node + Asus Expedition RX 570 OC, 4GB

 
2018 Mac Mini [8th,6C,B] + RX 570 @ 32Gbps-TB3 (Razer Core X) + macOS 10.14 & Win10 [build link]  


ReplyQuote
joevt
(@joevt)
Noble Member
Joined: 4 years ago
 
Posted by: yjchua

The thing is, what actually determines the number of PCIe lanes allocated to the TB3 device?

Is it the OS that decides? Or is it dependent on hardware?

The hardware decides. The software can tell the hardware to try renegotiating (at least the link speed; I'm not sure about the link width). Graphics drivers lower the link speed when the graphics card is idle. I've never seen a driver change the link width. I think all Thunderbolt eGPUs should have four lanes for the graphics card. One lane occurs when there's a problem with the three other lanes during link negotiation. Maybe the lspci command (verbose mode) has useful information?

Can you show a screen shot of the PCIe lane width problem?

You could try removing the graphics card and reinserting it. Or try another card.

Mac mini (2018), Mac Pro (Early 2008), MacBook Pro (Retina, 15-inch, Mid 2015), GA-Z170X-Gaming 7, Sapphire Pulse Radeon RX 580 8GB GDDR5, Sonnet Echo Express III-D, Trebleet Thunderbolt 3 to NVMe M.2 case


ReplyQuote
yjchua
(@yjchua)
Eminent Member
Joined: 5 years ago
 
Posted by: joevt
Posted by: yjchua

The thing is, what actually determines the number of PCIe lanes allocated to the TB3 device?

Is it the OS that decides? Or is it dependent on hardware?

The hardware decides. The software can tell the hardware to try renegotiating (at least the link speed; I'm not sure about the link width). Graphics drivers lower the link speed when the graphics card is idle. I've never seen a driver change the link width. I think all Thunderbolt eGPUs should have four lanes for the graphics card. One lane occurs when there's a problem with the three other lanes during link negotiation. Maybe the lspci command (verbose mode) has useful information?

Can you show a screen shot of the PCIe lane width problem?

You could try removing the graphics card and reinserting it. Or try another card.

Screen Shot 2018 11 24 at 01.35.28
Screen Shot 2018 11 24 at 01.35.40

Here goes.

Already tried removing and reinserting it - no dice. Same with SMC and NVRAM reset. Don't have another card to try at the moment. Also tried using two different cables - the one that came with the Node and a 0.5m CableMatters TB3 cable. Maybe I should try getting an active cable?

How exactly should I do this lspci thing?

Late-2016 15" rMBP (2.9/16/1TB/460)
Akitio Node + Asus Expedition RX 570 OC, 4GB

 
2018 Mac Mini [8th,6C,B] + RX 570 @ 32Gbps-TB3 (Razer Core X) + macOS 10.14 & Win10 [build link]  


ReplyQuote
joevt
(@joevt)
Noble Member
Joined: 4 years ago
 
Posted by: yjchua

Already tried removing and reinserting it - no dice. Same with SMC and NVRAM reset. Don't have another card to try at the moment. Also tried using two different cables - the one that came with the Node and a 0.5m CableMatters TB3 cable. Maybe I should try getting an active cable?

Does the graphics card appear in the PCI section? Post a screenshot of that.

The Thunderbolt info shows the cable is ok (Speed: Up to 40 Gb/s x1, Current Link Width: x2). The problem is between the graphics card and the Thunderbolt controller of the eGPU. Maybe you need a new graphics card (test it in a different PCIe slot) or a new eGPU box (test a different PCIe card).

Posted by: yjchua

How exactly should I do this lspci thing?

Follow the links from: https://egpu.io/forums/builds/2018-13-xps13-nvidia1060-6go-galax-snpr-windows-10/#post-48096

Try the pcitree.sh command:

[Please login to see this]

Try lspci by itself. This one lists the devices:

[Please login to see this]

This one lists the devices in a tree (similar to pcitree.sh):

[Please login to see this]

The following lists the devices and most of their information. You'll probably only want to show us the devices belonging to the graphics card and the Node.

[Please login to see this]

Mac mini (2018), Mac Pro (Early 2008), MacBook Pro (Retina, 15-inch, Mid 2015), GA-Z170X-Gaming 7, Sapphire Pulse Radeon RX 580 8GB GDDR5, Sonnet Echo Express III-D, Trebleet Thunderbolt 3 to NVMe M.2 case


ReplyQuote
 of  30