@joevt
"40 Gbps is really 32.4 Gbps for non-video data
Of the ~40 Gbps = 5 GB/sec bandwidth of Thunderbolt 3, ~8 Gbps can be used ONLY for video data, leaving a maximum theoretical bandwidth for non-video data of 32.4 Gbps = 4.05 GB/sec.
Thus the maximum theoretical bandwidth for non-video data is 32.4 Gbps = 4.05 GB/sec. However, that data is 8b/10b encoded, so the true *usable* bandwidth drops to 25.92 Gbps ~= 3.24 GB/sec. Good luck with that—MPG has never been able to test any Thunderbolt 3 SSD at faster than about 2.645 GiB/sec= 2.84GB/sec. So much for specifications versus achievable real-world data throughput."
I think all the benchmarks >3GB/s are lying
That macperformanceguide.com article was full of inaccuracies and I told him that. He did not attempt the tests I suggested or make corrections. He misinterpreted some crappy
Intel marketing material for some of his statements rather than doing tests or doing real research.
Thunderbolt transmits on the wire at 41.25 Gbps. It uses 64b/66b encoding so the actual amount of data is 40 Gbps. Thunderbolt is the only modern connection I know where the data bandwidth (40 Gbps) rather than the wire bandwidth (41.25 Gbps) is used to describe the bandwidth for normal users. USB 3.0 is actually 4 Gbps of data, not 5 Gbps. USB 3.1 gen 2 is actually 9.7 Gbps of data, not 10 Gbps. Same for SATA (6G -> 4.7 Gbps), HDMI (18 Gbps -> 14.4 Gbps), etc.
DisplayPort is tunnelled over Thunderbolt so the 8b/10b encoding used by DisplayPort is not a factor since Thunderbolt has its own 64b/66b encoding.
Bandwidth used by a display is pixel clock (MHz) x bits per pixel (bpp).
2.5K 2560x1600 269MHz * 30bpp = 8 Gbps.
4K 3840x2160 533MHz * 30bpp = 16 Gbps.
5K 5120x2880 483.37MHz * 2 * 30bpp = 29 Gbps.
6K 6016x3384 648.91MHz * 2 * 30bpp = 38.9 Gbps.
The 5K and 6K cases use a dual tiled mode which uses two DisplayPort connections, one for each half of the display. In the case of 6K, the connections are both HBR3 which would total 51.84 Gbps but it works because not all of the DisplayPort HBR3 bandwidth is required for the two 3008x3384 halves and Thunderbolt does not transmit the DisplayPort stuffing symbols used by DisplayPort to fill the DisplayPort link bandwidth.
The 40 Gbps is not shared between ports. Each port can do 40 Gbps for 80 Gbps total but it's currently impossible to transmit 80 Gbps of data+video. The Thunderbolt controller of a host has an upstream PCIe connection to the host bus and two upstream DisplayPort connections to the host GPU. The Thunderbolt controller has two downstream Thunderbolt ports. 38.9 Gbps of video can be output to one port while the other port transmits 22-25 Gbps of data. ≈60 Gbps total.
Using two HBR3 displays, you can transmit ≈25 Gbps two each port, and transmit ≈11 Gbps to each port. ≈72 Gbps total.
The upstream PCIe connection is usually PCIe 3.0 x4 = 31.5 Gbps. The max amount of data I was able to get using two ports of a discrete Thunderbolt controller (Alpine Ridge or Titan Ridge) was ≈23 Gbps. Integrated Thunderbolt controllers (Ice Lake, Tiger Lake, M Series Macs) don't have the PCIe 3.0 x4 upstream limit.
Newer GPUs support DSC which can be used by new displays such as the Apple Studio Display or Apple Pro Display XDR to reduce average bpp to 12.
5K 960MHz * 12bpp = 11.52 Gbps.
6K 1286MHz * 12bpp = 15.4 Gbps.
So a 6K display can use less bandwidth than a 4K display.
DisplayPort is mostly transmit. Thunderbolt has separate lines for transmit and receive, therefore, while a display may eat into data transmit bandwidth, the data receive bandwidth is wide open.
I don't think the 24 Gbps benchmarks are lying. I think slight adjustments have been made to Thunderbolt peripheral firmware since the first Alpine Ridge devices. Also, if you think that disk benchmarks are being affected by caching, then consider non-disk related benchmarks, such as for eGPUs. I think I've seen some of those approach or exceed 3000 MB/s.
https://egpu.io/forums/builds/2019-...3-mastercooler-eg200-macos-12-1-win11-itsage/