Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

w00t951

macrumors 68000
Original poster
Jan 6, 2009
1,834
53
Pittsburgh, PA
So, this company called "Sonnet" is specializing in creating Thunderbolt accessories for Macs. They are coming out with an external GPU cradle that supports most PCI Express 2.0 dual slot GPUs. I'm not sure whether it will send the video back into the MBP's monitor or to an external display, but it's still worth checking out. Can anyone guess at what the performance bottleneck would be for... Say, an AMD HD 6850 GPU? That card was meant to run on a PCI Express 2.0 16x bus, but the Thunderbolt will probably only provide the capabilities of a PCI Express 2.0 4x bus. I'm guessing around 20-30%. Ideas?

http://www.sonnettech.com/product/thunderbolt/index.html
 
So, this company called "Sonnet" is specializing in creating Thunderbolt accessories for Macs. They are coming out with an external GPU cradle that supports most PCI Express 2.0 dual slot GPUs. I'm not sure whether it will send the video back into the MBP's monitor or to an external display, but it's still worth checking out. Can anyone guess at what the performance bottleneck would be for... Say, an AMD HD 6850 GPU? That card was meant to run on a PCI Express 2.0 16x bus, but the Thunderbolt will probably only provide the capabilities of a PCI Express 2.0 4x bus. I'm guessing around 20-30%. Ideas?

http://www.sonnettech.com/product/thunderbolt/index.html

PCI Express 16x is equivalent to 64Gbit/s, bi-directional. Thunderbolt is 10Gbit/s, bi-directional. I'm sure you can do the math ;)
 
I guess he wants to know what impact it has and it is definitely not simple math.
a) I am quite sure it will only put out to an external screen, since anything else is quite difficult. It would require some write back of screen buffer to be put out by the Intel GPU in forwarding mode. Exactly like it is with Nvidia Optimus. MBP don't support Optimus with any drivers thus your are most likely out of luck here.
b) I know that there is little difference between x16 and x8 for faster cards expect for some few games that load huge textures. It might also help to choose a card with a comparably bigger VRAM as it won't have to load new stuff as often. Since all that Thunderbolt supports is effectively PCIe 2.0 x2.5 it probably has some quite big impact. Another problem is that GPU drivers probably assume they have more bandwidth on this connection and might not do thins ideally for the config.

I couldn't say how much of a problem it is but once these things are releases I am sure some tests will pop up. It is also possible there isn't some constant frame rate hit it but more visual problems, occasional stuttering, slow loading textures and stuff.
It will also depend on the game and even on the level in the game. Indoors in rooms and stuff there isn't usually too much data required but outdoor levels might become slide shows.
 
I read that PCI 4x isn't used to its fullest potential by many GPUs. I'm looking at an AMD HD 6780 1GB. I thought that games loaded the textures into the GPU's vRAM as the game loads new sections of the map. I'm okay with a bit of momentary lag (1-2 seconds as the blazing fast Thunderbolt port transfers textures) but not choppy framerates. I don't think the GPU would have trouble with sending video back to the display.
 
I read that PCI 4x isn't used to its fullest potential by many GPUs. I'm looking at an AMD HD 6780 1GB. I thought that games loaded the textures into the GPU's vRAM as the game loads new sections of the map. I'm okay with a bit of momentary lag (1-2 seconds as the blazing fast Thunderbolt port transfers textures) but not choppy framerates. I don't think the GPU would have trouble with sending video back to the display.

The graphics card wouldn't send it "back", it would send the video out through its own ports
 
PCI Express 16x is equivalent to 64Gbit/s, bi-directional. Thunderbolt is 10Gbit/s, bi-directional. I'm sure you can do the math ;)

A modern day GPU connected to a PCI Express 16x or to a PCI Express 4x has more or less (10% difference at maximum) the same performance in terms of FPS @ FullHD resolution....
 
The graphics card wouldn't send it "back", it would send the video out through its own ports

Well, looking at the Sonnet photo, it looks like the Thunderbolt port is in the back of the enclosure. I was just assuming that it would then be sending the video back into the MBP's display. There is no other port opening on the enclosure.
 
A modern day GPU connected to a PCI Express 16x or to a PCI Express 4x has more or less (10% difference at maximum) the same performance in terms of FPS @ FullHD resolution....

That's good news. What about using 1440x900? If your numbers are correct, I'm assuming there will be almost no performance decrease, especially if I'm not going to be using AA. What about game load times? What do you think will happen with that?

EDIT: Looking at the 6850, it says that the card 4.2 Gbps, which falls under the Thunderbolt's 10 Gbps.
 
Last edited:
That's good news. What about using 1440x900? If your numbers are correct, I'm assuming there will be almost no performance decrease, especially if I'm not going to be using AA. What about game load times? What do you think will happen with that?

Here you can find the tests: http://hardocp.com/article/2010/08/25/gtx_480_sli_pcie_bandwidth_perf_x16x16_vs_x4x4

I am no hardware expert and to my knowledge Thunderbolt is slower than 4X, more or less comparable to PC-E 2X

No text has been done connecting GPU to less then a 4x interface, so no data avaliable...

I can guesstimate that a External Thunderbolt GPU could have more or less the same performance of a High end mobility GPU, so similar to the ones in the high end iMac but nothing more.
But beware there are no data around so it is all pure speculation...
 
Here you can find the tests: http://hardocp.com/article/2010/08/25/gtx_480_sli_pcie_bandwidth_perf_x16x16_vs_x4x4

I am no hardware expert and to my knowledge Thunderbolt is slower than 4X, more or less comparable to PC-E 2X

No text has been done connecting GPU to less then a 4x interface, so no data avaliable...

I can guesstimate that a External Thunderbolt GPU could have more or less the same performance of a High end mobility GPU, so similar to the ones in the high end iMac but nothing more.
But beware there are no data around so it is all pure speculation...

Well Bad Company 2 is the game that I would like to run, so the lack of a performance impact from 16x to 4x.
 
Well Bad Company 2 is the game that I would like to run, so the lack of a performance impact from 16x to 4x.

I run bad company 2 perfectly fine on my internal 320m, on low settings of course. So even if there is a slight bottleneck in transfer over Thunderbolt, it should still run fine atleast on medium settings.
 
I run bad company 2 perfectly fine on my internal 320m, on low settings of course. So even if there is a slight bottleneck in transfer over Thunderbolt, it should still run fine atleast on medium settings.

Dude, I can run Bad Company 2 at all High at DX11 and no Anistropic Filtering or AA on my overclocked 6750M at 50-60 FPS. I want more performance though, and that's what I'm trying to get with my Macbook Pro.
 
Dude, I can run Bad Company 2 at all High at DX11 and no Anistropic Filtering or AA on my overclocked 6750M at 50-60 FPS. I want more performance though, and that's what I'm trying to get with my Macbook Pro.

jeez, I'd be happy with just that much performance, I guess I'm easy to please
 
Here you can find the tests: http://hardocp.com/article/2010/08/25/gtx_480_sli_pcie_bandwidth_perf_x16x16_vs_x4x4

I am no hardware expert and to my knowledge Thunderbolt is slower than 4X, more or less comparable to PC-E 2X

No text has been done connecting GPU to less then a 4x interface, so no data avaliable...

I can guesstimate that a External Thunderbolt GPU could have more or less the same performance of a High end mobility GPU, so similar to the ones in the high end iMac but nothing more.
But beware there are no data around so it is all pure speculation...

Thunderbolt is connected to a PCI-E 2.0 x4 slot giving it (4Gbit/s per lane * 4 lanes) 16Gb/sec bi-directional. It's plenty fast enough. The important thing is you will be running this on an external monitor, not the one on your notebook, should external GPUs be supported.
 
Thunderbolt is connected to a PCI-E 2.0 x4 slot giving it (4Gbit/s per lane * 4 lanes) 16Gb/sec bi-directional. It's plenty fast enough. The important thing is you will be running this on an external monitor, not the one on your notebook, should external GPUs be supported.

This is looking good so far. Now what about routing video back into the MBP's internal display? Anyone think it's feasible with the same Thunderbolt port? Or would you have to plug in a FW800 cable to wire the video back?
 
This is looking good so far. Now what about routing video back into the MBP's internal display? Anyone think it's feasible with the same Thunderbolt port? Or would you have to plug in a FW800 cable to wire the video back?

It's most certainly feasible that Thunderbolt would be able to do this since even USB2 has more than enough bandwidth to display an image on a monitor.

What I'm skeptical about is the laptop being setup for thunderbolt to act as a Video-In connection to the built-in display, I'd think this would only be possible with an external monitor.
 
A modern day GPU connected to a PCI Express 16x or to a PCI Express 4x has more or less (10% difference at maximum) the same performance in terms of FPS @ FullHD resolution....
Well that is just nonsense. Don't believe post simply because you like the answer.
I thought that games loaded the textures into the GPU's vRAM as the game loads new sections of the map. I'm okay with a bit of momentary lag (1-2 seconds as the blazing fast Thunderbolt port transfers textures) but not choppy framerates. I don't think the GPU would have trouble with sending video back to the display.
1. With PCIe 2.0 x16 you can entirely replace all data in the VRAM 8 times every second. They don't do that but they do copy back and forth quite a bit of data in modern games. GPUs today if they have the space (enough RAM in the System 8GB) extend their VRAM into RAM up to 4 GB total just to keep a lot of stuff available for quick transfer to VRAM.
And if you look at something like Microsoft Flight Simulator and how much PCIe lane configs impact performance you will know that some games copy insane amounts of data. Most games don't though.
2. The GPU does have trouble sending Data back. That is not as simple as you think. With Nvidia Optimus there is a special driver that keeps both GPUs running and the dedicated GPU simply puts all fully rendered frames into a buffer in VRAM from where it is fetched to the Intel GPU VRAM which does nothing but take the frame and send it to the screen with no further processing. There is no such driver for OSX and as far as I know there are no generic Optimus drivers that someone can get to work in a MBP without any troubles. Maybe Sonnet provides such a driver but I wouldn't consider it a "no trouble sending data back" solution.
You need to understand the dGPU and the iGPU are both wired to the display. There is no way to put a single pixel on the screen without going through either one of these cards.

No test has been done connecting GPU to less then a 4x interface, so no data avaliable...
Well it is the same as takeing a PCIe 1.0 x4 for which there is a test at tomshardware.com.
It shows that while x16 2.0 all the way to x8 1.0 which is the same as x4 2.0 the difference ain't too big. x4 1.0 though really takes a serious hit in not all but some games.
Doom 3, Half life have no problem at all. Crysis doesn't suffer too much either. CoD takes a hit of 40%. A true outdoor huge viewing distance game like MSFlightsim can be considered not working.
I guess a really cool game like BF3 with those big outdoor tank levels probably doesn't like a PCIe 2.5x link too much either.
That is a test with older GPUs and older games. Newer games, faster GPUs and much bigger default VRAM probably mean even more troubles.

To me this looks just like I thought. The GPU drivers don't really know how to deal properly with anything slower than PCIe 1.0 x8. They expect at least this and I would expect some visual problems too not just slower avg fps.
 
Well that is just nonsense

http://hardocp.com/article/2010/08/25/gtx_480_sli_pcie_bandwidth_perf_x16x16_vs_x4x4

"The results are actually a bit shocking to us to be honest. We weren’t so surprised that in the previous evaluation x8/x8 did not cause any differences at 2560x1600 but did at 5760x1200. However, we thought certainly at x4/x4 PCIe 2.0 mode there would be some kind of a bottleneck at 2560x1600, but the results have proven otherwise.Even with all the data that GTX 480 SLI is pushing across the PCIe bus, x4/x4 is NOT a bottleneck in a single display setup at 2560x1600 with AA enabled. The only game to show us any difference was AvP, but it did not affect the gameplay experience."

If there is so little differences (except for AvP) between 16x and 4x with a GTX480 SLI at 2560x1600. In my opinion there will not be any difference with a single card @ FullHD...
 
Just wanted to mention Sonnet is well regarded in the expansion game so if anyone could do it it'd be these guys.
 
x4 PCIe 2.0 is the same as x8 PCI 1.0 which as the results show doesn't suffer too much. half that again and the picture changes quite a bit.
thg tested a few more games also of different genres. All hardocp checked were of one single genre and with sort of similar engines. They could have added a crytek engine and all looked the same.
What is missing are the texture engines like the doom which don't show any impact at all. Strategy like World in Confilct breaks down a lot and testing something like Starcraft would be smart.
And they kind of miss out on the Dx9 Engines.
It might also be that the 480 with the huge VRAM just offers enough buffer which would mean a 2GB VRAM 6970 might work quite well via thunderbolt.
I don't know unless there are some serious test for the matter. What I could find shows that PCIe x4 wouldn't be to bad but the effective x2 doesn't look good.
 
What about the existing ViDock enclosures? I thought ExpressCard had a 2.5 Gbps capability, and the 10 Gbps of Thunderbolt is far higher. There are bound to be some more tests for the ViDock, and does anyone know what the bandwidth throttle for a good AMD card via ViDock would be? It should give us an idea for the kind of performance that we can expect from Thunderbolt.
 
Nvidia cards apparently work better in low bandwith situations according to the folks over at Notebookcheck.com. And I'm pretty sure there are generic optimus drivers as the Macbook Pro is just like any other windows laptop when running windows, save the unibody design:apple:
 
I guess it's time to clear some of the thoughts here. First, Sonnet doesn't say anything about GPU compatibility:

Imagine using full-size professional video capture cards, 8Gb Fibre Channel cards, 10-Gigabit Ethernet cards, and RAID controller cards with your new iMac® or MacBook® Pro

Okay, that doesn't mean that it's impossible to use it with a GPU but looks like Sonnet won't be providing the support for that (i.e. they won't sell you the software and hardware that may be required). Not a surprise since they don't sell GPUs and obviously they want to market it for their own RAID controllers etc.

Second, sending video to MBP's or iMac's monitor will require some serious software. The external GPU isn't connected to your internal LCD at all so that means you need some kind of CrossFire setup because the GPUs must work in parallel (i.e. the internal GPU can move load to the external GPU and then the eGPU can push it back to the iGPU which then gives you moving frames). Considering that OS X does not have any support for CF (or SLI), this solution sounds rather hard, maybe even impossible (Apple's drivers block it). eGPU to external monitor connection should be much easier in terms of software because the eGPU connects directly to the monitor, so essentially it is just another GPU.

Third, Macs don't use regular PC cards. Yes, the specs are the same but the ROM is EFI instead of BIOS (or something similar, I'm not an expert on these terms). For example, you can't just put any GPU into a Mac Pro, it won't even boot. It must be a GPU with EFI ROM and only Apple sells them (with nice profits of course). However, some PC cards can be flashed to work with Macs (basically you extract the ROM from a Mac card and then flash PC card's ROM so they will be the same). But, only certain cards work because you need drivers too. E.g. AMD 6970 doesn't work currently but AMD 6870 does (maybe because iMac's 6970M is a stripped down version of 6870).

That's it for the hardware and software limitations. Lets talk about the performance next. IMO using SLI/CF setups as reference isn't valid. Two x4 slots are the same as x8 slot, which is over three times faster than Thunderbolt. The game may not be able to take advantage of more then 32Gb/s of bandwidth, thus the small difference. However, x4 slot is half of that, only 16Gb/s.

I would like to emphasize that the performance loss depends 100% on the game. This article does a great job in proving my point. For instance, the drop is ~50% in Modern Warfare 2, even at 1680x1050. In Crysis, which is actually more demanding, the loss is less than 10%. Alien vs Predator, pretty much no loss at all. Dirt 2 - around 15%. STALKER, less than 10%. So, can you say that the loss is universal and thus give out one number that applies to everything? No, it varies a lot.

This article shows the performance difference in pro-apps (i.e. GPU intensive apps that are not games). The first gen Mac Pro has PCIe 1.0, which is half the speed of PCIe 2.0, 32Gb/s for x16 slot. Like you can see, the first gen Mac Pro is significantly slower than the others and this is mainly due to the limited bandwidth. Of course, it also has slower CPUs so it's worth it to note that too, though e.g. the OpenCL test should only tax the GPU. Again, there is no one specific percentage that tells the performance loss, it varies. Sometimes it's more than 50%, sometimes it's less than 10%.

I hope this clears up some questions.
 
In my opinion, the only question that needs to be answered is if a high end desktop GPU connected to a computer via Thunderbolt could provide higher graphics capability than the top end MBP's 6750M.

And I am very confident the answer is yes.
 
Second, sending video to MBP's or iMac's monitor will require some serious software. The external GPU isn't connected to your internal LCD at all so that means you need some kind of CrossFire setup because the GPUs must work in parallel (i.e. the internal GPU can move load to the external GPU and then the eGPU can push it back to the iGPU which then gives you moving frames). Considering that OS X does not have any support for CF (or SLI), this solution sounds rather hard, maybe even impossible (Apple's drivers block it). eGPU to external monitor connection should be much easier in terms of software because the eGPU connects directly to the monitor, so essentially it is just another GPU.

No you dont need that, there are several egpu solutions out there, what you need is the code to make it start. At least that is the way that works on windows, and that is the way thats supposed to work for people that like to play games, i.e. windows the availability of titles there is much greater


Third, Macs don't use regular PC cards. Yes, the specs are the same but the ROM is EFI instead of BIOS (or something similar, I'm not an expert on these terms). For example, you can't just put any GPU into a Mac Pro, it won't even boot. It must be a GPU with EFI ROM and only Apple sells them (with nice profits of course). However, some PC cards can be flashed to work with Macs (basically you extract the ROM from a Mac card and then flash PC card's ROM so they will be the same). But, only certain cards work because you need drivers too. E.g. AMD 6970 doesn't work currently but AMD 6870 does (maybe because iMac's 6970M is a stripped down version of 6870).

I do think its possible the move from BIOS has already happened, not saying ''100% fool proof guarantee!''

That's it for the hardware and software limitations. Lets talk about the performance next. IMO using SLI/CF setups as reference isn't valid. Two x4 slots are the same as x8 slot, which is over three times faster than Thunderbolt. The game may not be able to take advantage of more then 32Gb/s of bandwidth, thus the small difference. However, x4 slot is half of that, only 16Gb/s.

the math is just wrong, the expected performance is indeed close to the article you linked and others linked, people can get by with a gtx 460 and a thinkpad x220 with the speeds of the gtx 470m, and this is using the expresscard solution, not thunderbolt, which basically gives them pcie 1x speeds. The move to higher pcie bandwidth capable slots is mainly because of the power requirements not because of the lack of bandwidth, granted this is a extreme scenario where the performance loss is around 20-30%, but for people with high mobility in mind its kind of acceptable
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.