Jump to content

2013 11" MBA + GTX570@4Gbps+c-TBEC2 (PE4L 2.1b) + Win7 [kloper]


Recommended Posts

CLICK >> [url=http://forum.techinferno.com/diy-e-gpu-projects/6578-implementations-hub-tb-ec-mpcie.html#Thunderbolt]Implementations Hub: TB[/url]



The above links indexes all the DIY eGPU Thunderbolt implementations which have progressed significantly by using an inexpensive native Thunderbolt2 enclosure (AKiTiO Thunder2), and reduced both the hardware and software installation compexity compared to kloper's solution posted in 2013 below.

Forum -> Notebooks -> DIY e-GPU Projects -> Sticky: Implementations Hub: TB





[FONT=verdana]TLDR: By buying around $250 in commonly available parts, plus a video card, you can make the graphics of your 11" Macbook Air from 5X to 7X faster. Demo video at end of post. Step-by-step, here's how to exactly do it. Warning: not for the faint of heart!

NOTE: after this guide was written another was produced showing how for less than $100 more than this solution you can create a faster native 10Gbps Thunderbolt solution instead. See it at [url]http://forum.techinferno.com/diy-e-gpu-projects/4570-%5Bguide%5D-2012-13-rmbp-gtx660-sonnet-echo-express-se-%40-10gbps.html#post63754[/url].


[URL=http://imgur.com/DktfNr7][/URL] [URL=http://imgur.com/54b3A0E][/URL] [URL=http://imgur.com/e8W1eJ7][/URL] [URL=http://imgur.com/aV1Say8][/URL]

(click to see larger versions, video at end of article)



Hey everyone!

This is my third article here on this forum, though it's the first that the process can be done by anyone with off-the-shelf parts. No more discontinued exotic parts like the $180 BPlus TH05 are required. All you need is a macbook air, a graphics card, a power supply, Windows 7, and ~$250 to buy some adapters and software online. All these parts are readily available for anyone.

Like usual, I really want to thank Tech Inferno Fan for his help in doing all this. He's the mastermind behind the technicals, I just like writing articles and making stuff easier for everyone. He's super dedicated and eGPUs wouldn't be anywhere near where they are today if it wasn't for him! Thanks!

So what are we doing? We're going to make a Macbook Air accept an external video card via Thunderbolt! Yes, you might have read in the news that real commercial solutions are just around the corner. We've been promised by these companies over-and-over again, with youtube videos, hands-on reviews, press releases, etc, but nobody is releasing anything. It's been like this for over a year. Intel even openly admits its bias against GPU usage where it's listed as unsupported in their Thunderbolt Certification Application. Talking to one of their thunderbolt guys, here's what that "Not Supported" means:

Quote

The “Not supported” means that Intel won’t neither certify your product nor deliver, at the moment, any Technology License for this kind of usage. As you know, this Technology License is required to develop a Thunderbolt device in the market and Certification is a must have to market any Thunderbolt product.



So with the bad news out of the way, the good news is that you can still do it yourself -- just a bit less elegantly. We'll be using the Sonnet Thunderbolt to ExpressCard adapter, together with the BPlus PE4L ExpressCard to PCI-Express adapter. This PE4L adapter also includes a Delayed PCI-Reset jumper, making Windows 7 + Internal LCD rendering possible on the Macbook. Also, it's not that bad. As you'll see by the benchmarks later in the article, yes you're only running at expresscard 5Gbps x1 2.0 PCI bus speed (as opposed to 16X 2.0 on a proper PC and only half of Thunderbolt's 10Gbps), but its WAY WAY better than the internal integrated graphics of the laptop, plus you can still max out tons of games. The full PC bus speed is super rarely used anyways, so it's not like you'll get 1/16th the performance.

As part of this tutorial, we'll be using Windows 7 BIOS (installed the regular Bootcamp way). Things are possible in Windows 8 as well, but the instructions differ, and I've also had troubles getting Internal LCD rendering working on Windows 8. Yeah I'm not a fan of using legacy Windows versions either, but whatever, every game works on both OSes for now anyways. Oh and we're using Windows because games only exist for it, and I can't get the setup to work on OSX (haven't tried too much though).

Alright, lets get started!

My laptop specs



  • Mid-2013 11" Macbook Air
  • 1.7 GHz Intel Core i7-4650U (basically the most maxed out 11" mba)
  • 8GB 1600 MHz DDR3
  • Intel HD Graphics 5000 1024 MB
  • 512GB Apple SSD


Stuff to buy



  • Sonnet Echo ExpressCard Pro. I purchased mine for $134 at B&H Photo Video. This adapter turns 10Gbps Thunderbolt to 5Gbps ExpressCard, which is needed for the PE4L later. It's probably one of the more expensive parts in your setup because of Intel's arbitrage on Thunderbolt-related parts. Note that Sonnet also sells a faster 10Gbps Thunderbolt->PCIExpress box (~US$310 Sonnet Echo Express SE) which might seem like a great idea, but that's all sorts of problems with it, including an underpowered power supply, no PCI Delay switch (making it not easily work with Windows) and dismantling it to be able to use full length and double width video cards.
  • $70 BPlus PE4L V2.1 ExpressCard to PCI-Express adapter. You want the PE4L-EC060A package that includes the SWEX adapter to power on your power supply. If wanting a neater enclosure solution then purchase a $170 BPlus PE4H V3.2 instead, noting that your chosen video card will require the pci-e power connectors on the side of the card rather than the top. Visual comparison of the PE4H-EC060A 3.2 (left) and PE4L-EC060A 2.1 (right) in the spoiler:
    Spoiler

    If you're curious, BPlus used to offer a US$180 TH05 (which included the TB cable), which was a direct Thunderbolt to PCI-Express, but Intel shut it down and the entire BPlus Thunderbolt division in Jan 2013 per TH05 Recall Notice.
  • A Thunderbolt cable. You can get this at any Apple Store or online for around $36. I'd recommend getting a 2m cable since you'll probably want to have your GPU not directly beside your laptop.
  • 450W power supply capable of running the video card. $24AR-shipped Diablotek PH450 offers 12V/30A (360W) or Corsair CX430 offers 12V/32A (384W) of peak power, enough for ALL current video cards. If getting a basic ATX PSU then carefully read the first rail data on it, eg: 12V1:18A means 12*18=216W of peak power. That wouldn't be enough to drive my GTX570 that can draw up to 298W peak power. Look at your video card's spec sheet to see the peak wattage only it uses (not the suggested value that often includes motherboard + hard drives, etc). Honestly though, I'd recommend going for the 450W or even 500W power supplies available for around $20 at your local money-laundering stolen-stuff electronics store. If you get a power supply that doesn't output enough or doesn't like power spikes, it'll basically make your computer blue screen a lot mid-gaming. Ask me how I know.
  • $25 DIY eGPU Setup 1.X, developed by nando. Yes, you're paying for software, get over it. Nando did spectacular work to get Windows 7 Bootcamp to be able to properly accept the external videocard without giving an "Error 12" code. You want the latest 1.20 version incorporating new Macbook features that's not advertised on that linked page as yet.
  • A video card. I have the NVidia GTX 570, which is an awesome balance of great performance and price. You can use basically any video card you want, including AMD ones. Note on AMD cards, internal LCD rendering won't be possible without using something like Lucidlogix Virtu (not covered in this article). Also, don't go too crazy and order a NVidia Titan. Yes it's a great card, but you won't see the value for money since you are limited to a slower PCI bus. I'd recommend sticking in the 5xx or 6xx series of NVidia GTX cards.
  • 2013 11" Macbook Air. This is the laptop I have, but these instructions should be identical for the 13" Air. Additionally, the only step that will be different for every other kind of Macbook is the contents of the PCI.BAT file later. Post your laptop's specs in the comments of this thread to see if someone has a PCI.BAT for you.
  • A USB memory key that's at least 4GB for Bootcamp to install windows plus it's drivers.
  • Other software: Windows 7 ISO (from MSDN / MSDNAA / etc). Don't steal software.


PART A: Generic prep of Windows 7 64-bit

Spoiler

  • On your mac use Boot Camp Assistant to prep a USB key with Windows 7 64-bit
  • Still with Boot Camp Assistant, partition your main drive and start the Windows 7 installation process. I recommend around at least a 60GB partition. Games are big these days. If you just don't have the space, you can do what I do and turn off Hibernation Mode and the Virtual Memory Page File to save hard drive space (about 17GB together). Disabling Virtual Memory is kind of a bad idea, but I've never had troubles doing it -- this laptop's 8GB of ram is usually enough for anything.
  • Once partitioning is done, your computer will auto reboot and the Windows 7 installer will start. Install Windows 7.
  • The Windows 7 installer will install the Boot Camp drivers at the end of it.
  • Go to Intel's site and download the latest Intel HD 5000 drivers for Windows 7 64-bit. It's the same download for the HD 4000 drivers.
  • Launch Windows Update and apply all required/optional patches. Reboot as required. Repeat this step until nothing’s left. This will take a long time, deal with it.
  • There's some clock weirdness when switching between Windows and OSX, so add the key (via regedit) [FONT=courier new]HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformationRealTimeIsUniversal
  • [/FONT] with DWORD value [FONT=courier new]1[/FONT]


PART B: Putting together the eGPU and understanding the problem

Spoiler

  • On the PE4L, set SW1 (on the right) to position 3 (6.9s, though note it's more like 30s). Set SW2 (on the left) to position 2-3 for 2X (even though only 1X is really supported thanks to Intel requiring us to use the Sonnet Expresscard adapter).
  • Plug in the power (the white connector) into the PE4L from your power supply's floppy disk drive connector. There is no need to plug in the Black and Red cable (this is for automatic powersupply control, which doesnt work on the Macbook). Keep the jumper on both pins on the bottom right of the board.
  • Plug in the motherboard connector to the included SWEX adapter. Make sure it is in the ON position (1-2). Also plug in any required 6-pin/8-pin connectors to your GPU. Mine required 2 6-pin plugs.
  • Plug in the PE4L to your video card. It obviously won't cover all the pins of your video card, that's ok. Yes, I know it looks ghetto.
  • Plug the express card end of the PE4L into the Sonnet ExpressCard Pro.
  • Make sure your laptop is shut down.
  • Plug in the thunderbolt cable to the Sonnet and then the laptop. Also, make sure no monitors are plugged into the video card.
  • Turn on the power to the power supply, the GPUs fans should start, then start your laptop. Hold the Option key. Now wait for the red light to turn off on the PE4L. Once it’s off, select Windows.
  • Go to NVIDIA’s site, download and install the latest drivers for your video card. When prompted to reboot, shut down the computer instead.
  • Turn off the eGPU’s power supply.
  • Start the eGPU's power supply again and boot your laptop, waiting for that red light to go off again before selecting your Windows partition. You will always need to do a power cycle of the eGPU when rebooting your computer because of the way the PE4L works.
  • Once Windows has started, open the Device Manager. Select Scan For New Hardware.
  • Notice the GTX 570 (or whatever card you have) is listed with the yellow exclamation mark. If you double click on it you’ll see the dreaded Error 12. This Error 12 means that Windows wasn’t able to allocate a contiguous block of memory for the video card. Yes you probably have 8GB in your laptop, but the PCI Bus doesn’t work that way. We’re going to get rid of that error by reallocating devices in the PCI Bus.


PART C: Getting rid of Error 12 on this Windows 7 (BIOS) install

Spoiler

  • Go purchase DIY eGPU Setup 1.x (link above) if you haven't done so already. Run the self-extracting exe when booted into Windows to install to c:eGPU.
  • Open an administrator command line and run c:eGPUsetup-disk-image.bat. This will install everything and add a boot item so you can load the video card. Next we'll configure DIY eGPU Setup to work with the 2013 Macbook Air and Haswell chipset.
  • Mount the virtual disk image by running e:eGPUeGPU-Setup-mount.bat in Administrator mode. This will mount a V: drive.
  • In notepad, create the file V:configpci.bat and paste the following into it. Note that this is the file that changes depending on your Macbook type. If you dont have a 2013 Macbook Air, a couple addresses might change. Post in this thread and hopefully someone will post your config.


    :: TB TH05 uses 9:0.0 bridge, Sonnet/OWC uses 9:3.0. That 9:3.0 line may need

    :: to be altered depending on what TB enclosure/adapter you use. :: :: Disable CMD, set PCIe config space @echo -s 0:1c.4 COMMAND=0 1d.b=50 22.w=BEB0 26.w=D3F1 > setpci.arg @echo -s 5:00.0 COMMAND=0 1d.b=41 20.w=B0B0 22.w=BB00 24.w=C001 26.w=D1F1 >> setpci.arg @echo -s 6:03.0 COMMAND=0 1d.b=31 20.w=B200 22.w=b700 24.w=c001 26.w=CDF1 >> setpci.arg @echo -s 6:04.0 COMMAND=0 1c.b=41 1d.b=41 20.w=BAC0 22.w=BAF0 24.w=D1C1 26.w=D1F1 >> setpci.arg @echo -s 7:00.0 COMMAND=0 3C.b=0 >> setpci.arg @echo -s 8:00.0 COMMAND=0 1c.w=2121 20.l=B300B200 24.l=C9F1C001 28.l=0 30.w=0 3c.b=10 >> setpci.arg @echo -s 9:03.0 COMMAND=0 1c.w=2121 20.l=B300B200 24.l=C9F1C001 28.l=0 30.w=0 3c.b=10 >> setpci.arg

    :: NVidia eGPU @echo -s a:00.0 COMMAND=0 10.l=b2000000 14.l=c0000000 1c.l=c8000000 24.l=00002F81 3c.b=10 3C.b=10 50.b=1 88.w=140 >> setpci.arg @echo -s a:00.1 COMMAND=0 10.l=B30FC000 3c.b=10 >> setpci.arg

    :: Re-enable CMD @echo -s 0:1c.4 COMMAND=7 -s 5:0.0 COMMAND=7 -s 6:3.0 COMMAND=7 -s 6:4.0 COMMAND=7 >> setpci.arg @echo -s 7:00.0 COMMAND=6 -s 8:0.0 COMMAND=7 -s 9:3.0 COMMAND=7 >> setpci.arg @echo -s a:00.0 COMMAND=6 -s a:0.1 COMMAND=6 >> setpci.arg setpci @setpci.arg

  • In notepad, edit the file V:configstartup.bat and paste the following into it:
    call speedup lbacache
    call vidwait 60
    call vidinit -d %eGPU%
    call pci.bat
    call chainload mbr
    

  • Turn off your MacBook, power cycle the eGPU from the power supply and make sure the thunderbolt cable is still plugged into the MacBook. Make sure no display is plugged into the card.
  • Turn your MacBook on while holding Option. There's no need to wait for the red light to turn off now before proceeding. Select the windows partition.
  • Windows will boot into a menu allowing you to select between Windows and eGPU setup. Select eGPU setup.
  • Once you get to the Blue first menu, press enter for Option 1. This will prep the PCI Bus. Note it might take a few seconds for the eGPU to be detected (basically until the red light goes off)
  • Once that exits, you'll be back at that same boot menu. This time select Windows 7 and wait for it to boot.
  • Open up the Device Manager and you should see the GTX 570 again, except ... without the yellow exclamation mark! Horray! You fixed Error 12! This is basically whats been preventing people for a while from getting eGPUs working on their laptops.
  • Double click on the NVidia icon in the system tray. On the left side click on “Adjust image settings with preview”.
  • I know it’s shocking, but if you see a spinning NVidia logo, your internal LCD screen is being rendered by your external GPU! If you don’t believe me, launch your favorite game and notice how there’s no way the Intel HD 5000 could render it so well. I recommend you now install your fav benchmarking software, GPU-Z, FRAPS, Steam, etc to take advantage of your laptop’s new abilities.
  • You win!


Install Notes



  • Again, for AMD cards to render on the Internal LCD, you’ll need to use Virtu. See [URL]http://forum.techinferno.com/diy-e-gpu-projects/2967-lucidlogix-virtu-internal-lcd-mode-amd-egpus.html#post41056]Lucidlogix Virtu : internal LCD mode for AMD eGPUs[/URL] for instructions on how to get this to work.
  • When doing Internal LCD mode (which you’re doing when you have no monitor plugged into the video card), PhysX might not be on. Open the NVidia control panel and switch it from CPU to Auto. When doing benchmarks, keep it on CPU though.
  • Dont forget that every time you reboot, you must power cycle the eGPU
  • If someone knows how to get the eGPU to restart with a reboot of the computer, please let me know. Simply connecting the black and red cable isn't enough on the MBP from my observations. I tried the switch in both positions and both polarities.


Benchmarking



Cutting to the chase, benchmarks are below. It's insanely fast because the MBA LCD is 1366x768, it's a 15W i7-UM Haswell CPU that is on par performance wise to a high end 35W Sandy Bridge i5 CPU, plus a crazy video card. Woo! :D

external monitor

3dmark06: 19921 vantage: P15876 (gpu=19574) 3dmark11: P4900 (gpu=5210) 3dmark: Ice Storm: 87663, Cloud Gate: 10128, Fire Strike: 3413

internal monitor

3dmark06: 17645 vantage: P15030 (gpu=18270) 3dmark11: P4732 (gpu=5110) 3dmark: Ice Storm: 23839, Cloud Gate: 8943, Fire Strike: 3264

Intel HD5000 PE4L with GTX570 Difference Difference vs Internal
Min Settings Max Settings Min Settings Max Settings Min Settings Max Settings Min Settings Max Settings
Mirror’s Edge (DX9) Internal 41.467 18.083 88.933 85.133 2.1X 4.7X
External 41.467 18.083 142.167 123.333 3.4X 6.8X 1.6X 1.4X
Witcher 2 (DX9) Internal 20.700 6.083 70.683 29.567 3.4X 4.9X
External 20.700 6.083 121.300 39.417 5.9X 6.5X 1.7X 1.3X
Red Faction Armageddon (DX11) Internal 25.683 12.650 82.323 70.283 3.2X 5.6X
External 25.683 12.650 107.333 84.667 4.1X 6.7X 1.3X 1.2X
Bioshock Infinite (DX11) Internal NA for now
External 36.533 15.733 149.367 69.317 4.1X 4.4X


  • All numbers above are in frames per second done using FRAPS and recording 1 minute of actual gameplay
  • All games were run at 1366x768. Internal and external monitor were set to this. VSync off everywhere. The Macbook Air 11" has this resolution on the LCD. Sorry that this kinda makes the numbers seem high for real-world-with-a-monitor gaming.
  • "Internal" refers to numbers when rending in internal LCD mode. "External" is when I had an external monitor hooked up
  • "Min settings" means that I set every setting to the lowest possible value. This should make the game run as fast as possible (but look ugly). "Max settings" is the opposite. If the game had the option for presets of "Very Low" and "Ultra", etc, I just selected those and didnt go into advanced modes (except to turn off VSync).
  • Bioshock Infinite Internal LCD numbers arent ready yet.


Internal LCD Rendering vs External



A decision you'll need to make is if you want to plug a monitor into your video card or just use your laptop's monitor. Each has it's own pros and cons. You'll get faster performance with an external monitor, but you'll lose the convenience of not needing a giant monitor. This becomes relevant as people make better eGPU cases where your eGPU will be portable. Why bring a monitor to your friend's place when your laptop already has one?

It's actually kind of cool that you even get this choice. The way it works is by the NVidia Optimus drivers taking the video frame memory from the video card, piping it back over the Thunderbolt bridge to the Intel HD 5000 memory and overwriting Intel's memory so that you see the eGPU's output on the Intel LCD. Cool! If you're curious, this is the exact tech that's used when laptops have an NVidia internal discreet graphics chip.

Conclusion



It has become very clear that gaming is not only high-performance, but super practical on an 11" Macbook Air. There's so much going against it: this hodgepodge of adapters, it has a low voltage CPU, disaster of wiring and exposed sensitive parts, crazy boot-time chainloading software, Intel killing companies producing adapters and products left right and center via legal threats, etc. but somehow, with the right parts and some patience, it works spectacularly. And is quite cheap too!

Again I want to thank Tech Inferno Fan for all his help in working with me tirelessly over the last few months to get this working. Also, thanks goes out to TechInferno and the community thats been built here for allowing people to help eachother so efficiently. If you have any questions/comments, please feel free to reply to this thread.

I'm also available on twitter, @lg.

Thanks everyone -- have a great day! And enjoy gaming, I hear PayDay 2 is awesome too :D

kloper [/FONT]

Additional References



* [url]http://forum.techinferno.com/diy-e-gpu-projects/4570-%5Bguide%5D-2012-13-rmbp-gtx660-sonnet-echo-express-se-%40-10gbps.html#post63754[/url] - an alternative guide put together after this one showing a native 10Gbps Thunderbolt solution for
* [GUIDE] 2012 13" MBP + GTX660Ti/[email protected] (TH05): nando's extensive performance comparison of x1 2.0 (TB-to-EC) versus x2 2.0 (native TB) bandwidth, AMD vs NVidia, and NVidia Optimus vs LucidLogix Virtu drivers for internal LCD mode.

* [GUIDE] 2013 11" Macbook Air + [email protected] Win7-BIOS (TH05): my writeup using a native Thunderbolt TH05 eGPU adapter

* [GUIDE] 2012 13" Retina MBP + BIOS-WIN7 + [email protected] (TH05): my writeup using a native TH05 Thunderbolt eGPU adapter

* Thunderbolt, expresscard and mPCIe eGPU implementations: documented DIY TB/expresscard/mPCIe eGPU implementations.

[video=youtube;kZZdwkICE3M]http://www.youtube.com/watch?v=kZZdwkICE3M[/video]
  • Thumbs Up 9
Link to comment
Share on other sites

Additional info relating to kloper's post


A tidier solution: use a US$170 BPlus PE4H 3.2 enclosure (below left) instead of US$70 BPlus PE4L 2.1b adapter (below right) used in kloper's article:
 

PE4H%20V3.2_EXP.jpg PE4L_ver2.1_1.jpg


2011-2013 Thunderbolt is 10Gbps

I'm seeing comments at macrumors about Thunderbolt's bandwidth limitations. The electrical link to the pci-e device is x4 2.0 (16Gbps) but Thunderbolt is restricted downstream to 10Gbps, 12.5% slightly faster than x2 2.0 as discussed. Need to wait for 'Thunderbolt 2' with 2014 ETA to see them uprate that to 20Gbps. 'Thunderbolt 2' will be slightly faster than x4 2.0 performance, giving over 90% of real-world desktop PC performance.


Native 10Gbps Thunderbolt enclosure instead of using 5Gbps expresscard?

Kloper is using a Sonnet Echo Expresscard Pro Thunderbolt-to-expresscard adapter to connect a PE4L 2.1b (expresscard) to his MBA's TB port. That adapter downgrades bandwidth from Thunderbolt's native 10Gbps to Expresscard 2.0's 5Gbps. 

OWC Helios and Sonnet Echo Express SE are alternative native 10Gbps TB solutions starting at a costlier $310. Though they have two additional problems. First is they'd need to remove the circuit board and run it without the case since it's restricted to single-width cards unless you want to pay US$799(!!) for a Sonnet Echo Express Pro that can host a double-width card. Second is they are missing the PCI Reset Delay circuit necessary for BIOS/MBR boot (bootcamped Win7/Win8) to work. T|I user strandmatte was able to overcome both these issues and present a faster 10Gbps native Thunderbolt solution costing less than $100 more than klopers expresscard-to-thunderbolt one. See strandmatte's guide at http://forum.techinferno.com/diy-e-g...html#post63754 .

It's worth mentioning that a US$180 BPlus TH05 (inc Thunderbolt cable) native Thunderbolt adapter released in Sep 2012 had none of the issues the Sonnet Echo Express SE or OWC Helios has but was recalled in Jan 2013 due to (presumably) threats by Intel/Apple per TH05 recall notice. Prior to the recall, several users had successfully implementing eGPUs using the TH05 as shown below. These were simpler, cheaper and had double the pci-e bandwidth of kloper's expresscard (5Gbps) solution. 

2013 13" Macbook Pro Retina + Nvidia/AMD (PE4L+TB-EC, BIOS) (Tech Inferno Fan)
2013 11/13" Macbook Air + [email protected] (TH05, BIOS) (kloper)
2012 15" Macbook Pro Retina + [email protected] (TH05, UEFI) (shelltoe)
2012 13" Macbook Pro Retina [email protected] (TH05, BIOS) (kloper)
2012 13" Macbook Pro Retina +GTX660@10Gbps (Sonnet Echo Express SE, BIOS) (Strandmatte)
2012 13" Macbook Pro + [email protected] (TH05, BIOS + UEFI) (Tech Inferno Fan)
2012 11/13" Macbook Air + [email protected] (TH05, BIOS) (goggle_peace)

The performance difference between 10Gbps Thunderbolt and 5Gbps expresscard as used in Kloper's solution is discussed at 2012 13" MBP + GTX660Ti + HD7870 (TH05 @ x2 2.0) summarized as:
 

 
What performance benefit does x2 2.0 give over x1 2.0?

* external LCD: +4.8%, max=18.1% [GTX660Ti: +6.3% max=18.1%; HD7870=+3.2% max=8.8%]
* internal LCD Optimus: +14.6% max=40.8%
* internal LCD Virtu^$35 : +21.5% max=36.6% [GTX660Ti=23.6% max=36.6%; HD7870=19.5% max=34.2]

Users with IVB/SB expresscard/mPCIe eGPU implementations would likely want to know how much better performance would a Thunderbolt eGPU provide.

We see external LCD sees only +4.8% with max 18.1% performance improvement over x1 2.0. This means the sample benchmarks
are not taxing the pci-e bus. The extra bandwidth required when running internal LCD mode where both Optimus and Virtu benefit significantly from the increased bandwidth.


Youtube gaming videos at expresscard 2.0 pci-e bandwidth level (x1.2Opt, 5Gbps + pci-e compression)

SimoxTav has produced the most comprehensive set of youtube game videos showing x1.2Opt internal LCD performance. x1.2Opt designates that a x1 link and iGPU was detected after which the NVidia Optimus driver engages pci-e compression greatly accelerating mostly DX9 titles (30-300%). That's using a 12.5" HP 2560P + GTX560 with the 1366x768 LCD resolution and 5Gbps pci-e bandwidth as kloper's 11" MBA above.

SimoxTa's Channel - YouTube: Battlefield 3, Starcraft 2, WOW, Diablo 3, NFS Shift 2, Dragon Age 2 + more
SimoxTa's summary of performance seen. notebookreview.com host linked via webarchive as they've been a saboteur of this project.


Youtube gaming videos at native Thunderbolt pci-e bandwidth level (x2 2.0, ~10Gbps)

boon111 has youtube gaming videso showing x2 2.0 internal LCD performance. That's using a 2012 13" rMBP i7-3520M 2.9 + GTX670 with a native 10Gbps TH05 Thunderbolt adapter. Full configuration details at TH05 eGPU Setup 13" Retina Macbook Pro Late 2012.

boon111's channel - Youtube: Black Ops 2, Crysis 2, Starcraft 2, Diablo 3, Dirt 3, Borderlands2, Batman Arkham City.


Best upcoming option: US$250 Silverstone T004 450W native 10Gbps Thunderbolt enclosure 

The affordable gamechanger may come if Silverstone T004 is released in the coming month or two. US$250 for a 450W double-width, full length and width native 10Gbps Thunderbolt eGPU enclosure. No messy wiring, well priced and looks great. Awesome. Will only be available for purchase if they pass Intel certification. Am curious if Intel will continue to be a fun-wrecker and block it or finally concede. 

SilverStone debuts Thunderbolt external graphics card case
Computex 2013: Thunderbolt Graphics from Silverstone

IMG_7621.jpg


Seeking Intel/Apple cooperation

Intel have not exactly been generous in giving users pluggable bandwidth for their notebooks. Had they been more cooperative we would have seen mainstream eGPUs over 4 years go. Instead Intel obstructed the possibility by locking down features like user-settable x2/x4 southbridge ports (starting Series-6) preventing ganging mPCIe/expresscard slots to extract multi-lane bandwidth. Intel's oppositional conduct disorder means it's listed as a saboteur of this project.

Worse still is them gategrashing the TB eGPU party. As mentioned, TH05 Recall Notice shows Intel forced a recall in Jan 2013 of the US$180 BPlus TH05 released in Sep 2012. You are welcome to contact Intel's Thunderbolt development to voice your TB requirements:

>> Contact: Intel Thunderbolt Development Team <<


What if Intel/Apple continue to refuse to support eGPUs over Thunderbolt?

Then we'll continue to see more hacks via mPCIe slots such as MikJoa's workaround below. There Sony never bothered to allow an external desktop video card via it's proprietary 10Gbps Lightpeak port. So MikJoa completely ignored the LP port instead cutting a hole in his 13" Sony Z3 (awesome machine!) and wiring up an eGPU using the x1 2.0 (5Gbps) mPCIe wifi slot as shown below. End result is the same 5Gbps + pci-e compression bandwidth as kloper achieved but without any need for Thunderbolt accessories - it's all just straight pci-e 2.0, so is $134 cheaper than kloper's TB-to-expresscard solution. If Intel enabled pci-e 3.0 on their Southbridge ports then it would be x1 3.0, nearly the same bandwidth as 2011-2013 Thunderbolt.

  • Thumbs Up 3
Link to comment
Share on other sites

  • Founder

@kloper thanks for the very detailed guide. Sorry about the temporary downtime everyone, we didn't expect such a large influx of guests all at once. Server has been upgraded to handle the increased traffic.

Link to comment
Share on other sites

US$250 Silverstone T004 450W Thunderbolt enclosure

The affordable gamechanger may come if Silverstone T004 is released as they say in the coming month or two. $250 for a 450W double-width, full length Thunderbolt eGPU enclosure. Awesome.

Very exciting to see this. But if Intel, as stated in the first post, will not give a license to a Thunderbolt device aimed for external GPU usage, then how can SilverStone ever release this product?

Ok, I saw you edited your post. Let's hope Intel will stop their nonsense, they are getting bad reputation. Would be rather pointless of SilverStone to even start work on this just to get rejected.

Link to comment
Share on other sites

First of all, you must have big balls (and a big wallet) to try something like this.

I have a couple of questions about the performance if you find the time to show a bit more. I've seen companies like MSI, Silvertone, and others build prototype external GPUs for Thunderbolt over the past couple years that only worked with Windows as well but none of them had benchmarks like yours listed.

Do you have any other GPUs form different generations you could try? I am curious to know what the cap on performance would be. Like, would a GTX460 (or whatever older card) get the same or worse numbers as the 570 you have.

Could you post a video of game play footage when in an intense battle? More baddies the better. Let's see this thing under a heavy load. What's the frame rate then. (No offence, but shaking the mouse around in a friendly city is hardly stressing the card).

Just want to know what the cap is/might be on this kind of rig. I mean, your 570 is plug into a port that's a fraction of the speed NVIDIA says is it should need for it's "peak bandwidth" of 160 Gbit/s. Basically, I just want to see this thing catch fire lol! No, but I would like to see a big battle of some kind. StarCraft 2 would be a good one, having to render all of those little units live in some of the custom tug of war games are stressful on the system.

Anyway, thanks for humoring me.:Banane54:

Link to comment
Share on other sites

First of all, you must have big balls (and a big wallet) to try something like this.

I have a couple of questions about the performance if you find the time to show a bit more. I've seen companies like MSI, Silvertone, and others build prototype external GPUs for Thunderbolt over the past couple years that only worked with Windows as well but none of them had benchmarks like yours listed.

Do you have any other GPUs form different generations you could try? I am curious to know what the cap on performance would be. Like, would a GTX460 (or whatever older card) get the same or worse numbers as the 570 you have.

Could you post a video of game play footage when in an intense battle? More baddies the better. Let's see this thing under a heavy load. What's the frame rate then. (No offence, but shaking the mouse around in a friendly city is hardly stressing the card).

Just want to know what the cap is/might be on this kind of rig. I mean, your 570 is plug into a port that's a fraction of the speed NVIDIA says is it should need for it's "peak bandwidth" of 160 Gbit/s. Basically, I just want to see this thing catch fire lol! No, but I would like to see a big battle of some kind. StarCraft 2 would be a good one, having to render all of those little units live in some of the custom tug of war games are stressful on the system.

Anyway, thanks for humoring me.:Banane54:

Other youtube gaming videos showing peformance at this pci-e bandwidth level (x1.2Opt, 5Gbps)

SimoxTa has produced the most comprehensive set of youtube game videos showing x1.2Opt internal LCD performance. That's using a 12.5" HP 2560P + GTX560 with the 1366x768 LCD resolution and 5Gbps pci-e bandwidth as kloper's 11" MBA above.

SimoxTa's Channel - YouTube: Starcraft II, WOW, Diablo 3, NFS Shift 2, Dragon Age 2 + more

SimoxTa's summary of performance seen. notebookreview.com host linked via webarchive as they've been a saboteur of this project.

Link to comment
Share on other sites

As part of this tutorial, we'll be using Windows 7 BIOS (installed the regular Bootcamp way). Things are possible in Windows 8 as well, but the instructions differ, and I've also had troubles getting Internal LCD rendering working on Windows 8. Yeah I'm not a fan of using legacy Windows versions either, but whatever, every game works on both OSes for now anyways. Oh and we're using Windows because games only exist for it, and I can't get the setup to work on OSX (haven't tried too much though).

Alright, lets get started!

This is AWESOME! I have been waiting for this solution to come for so long! I will definitely try this out over the weekend!

However I have a question regarding OSX. Many of us use OSX for video editing, and if I were able to use this method to boost my graphics card on OSX that would make my life complete. Currently my macbook retina's 13" graphics is a bit too slacky and slow for what I do in terms of editing.

Do you think it would be possible to make this work for video editing on OSX any time soon?

Kind Regards

Link to comment
Share on other sites

This is AWESOME! I have been waiting for this solution to come for so long! I will definitely try this out over the weekend!

However I have a question regarding OSX. Many of us use OSX for video editing, and if I were able to use this method to boost my graphics card on OSX that would make my life complete. Currently my macbook retina's 13" graphics is a bit too slacky and slow for what I do in terms of editing.

Do you think it would be possible to make this work for video editing on OSX any time soon?

Kind Regards

It seems like we will have to wait until Apple makes graphics card compatible with thunderbolt and it's OS. If you use an older macbook pro with expresscard, a non-thunderbolt egpu is virtually plug and play with OS X.

Link to comment
Share on other sites

Hey there! Congratulations on what you did there and thanks for the very detailed guide, I pretend to follow it with my laptop and later post my results. However, I'm a MacBook Pro 13'' Core i7 Mid 2012 owner, so I guess I need a different pci.bat file.

Does anyone here have the .bat file I need for my laptop? I'd be eternally thankful if so.

On the other hand, I'm not quite sure about the portability I'd get from the moment I install the eGPU and so on. What are the steps to follow, for example, if I have to use windows later not in my home? Or if I just want to take my laptop anywhere else?

Thanks in advance for your answer.

Link to comment
Share on other sites

Hey there! Congratulations on what you did there and thanks for the very detailed guide, I pretend to follow it with my laptop and later post my results. However, I'm a MacBook Pro 13'' Core i7 Mid 2012 owner, so I guess I need a different pci.bat file.

Does anyone here have the .bat file I need for my laptop? I'd be eternally thankful if so.

On the other hand, I'm not quite sure about the portability I'd get from the moment I install the eGPU and so on. What are the steps to follow, for example, if I have to use windows later not in my home? Or if I just want to take my laptop anywhere else?

Thanks in advance for your answer.

http://forum.techinferno.com/diy-e-gpu-projects/3062-2012-13-mbp-gtx660ti-hd7870-th05-%40-x2-2-0-a.html#post42483 has details you require along with a pci.bat. eGPU is disconnected using the "Safely remove hardware" system tray item.

Link to comment
Share on other sites

Great work.

I'd like to know, if this works with my mid 2011 21,5" iMac (1x Thunderbolt). I was searching for something like this for maybe a year. First i was trying to replace the radeon 6750m (512mb) with a 6970m (2GB), but that didn't worked. This would be a good way to improve my iMac specs :)

Link to comment
Share on other sites

I'm a bit confused. I've gathered all the hardware components I need to make this happen. I have a mid-2012 MBA 11" i7 8GB, PE4L, sonnet echo and a gtx 660. However I'm not sure which path I should choose regarding BIOS or EFI for my windows installation. Some information suggests EFI is the better route. Then I read this thread. Anyone more enlightened than me care to share more info?

*Sorry for the hijack!*

Link to comment
Share on other sites

I'm a bit confused. I've gathered all the hardware components I need to make this happen. I have a mid-2012 MBA 11" i7 8GB, PE4L, sonnet echo and a gtx 660. However I'm not sure which path I should choose regarding BIOS or EFI for my windows installation. Some information suggests EFI is the better route. Then I read this thread. Anyone more enlightened than me care to share more info?

*Sorry for the hijack!*

If EFI works then it can eliminate the need for pre-booting via Setup 1.x giving a plug and plug solution. Certainly that was the case for my 2012 13" cMBP in my sig. However, both kloper and google_peace, both 2013 and 2012 MBA owners respectively, chose BIOS mode. I recall the reason being the iGPU not working properly if boot with the eGPU active in EFI mode. Google_peace's implementation is at http://forum.techinferno.com/diy-e-gpu-projects/2735-macbook-air-2012-8gb-th05-560ti-egpu-setup-1-x.html .

DIY eGPU Setup 1.20 configuration (startup.bat and pci.bat) for 2012 MBA using Sonnet Expresscard adapter

To do a 2012 MBA BIOS implementation via Setup 1.x, use klopers startup.bat (at first post) then use google_peace's 2012 MBA pci.bat BUT change all references of 7:0.0 to 7:3.0. That's because the Sonnet Echo Expresscard sits at a different address than the native TH05 adapter used in that implementation. I've combined these bits of info in the spoiler below ready for use with your 2012 MBA:

Create the following two files using notepad within Windows:

v:\config\pci.bat


:: adapter these are 7:3.0. So replace '7:3.0' entries below with '7:0.0' if using native TB enclosure.
::

@echo off
echo Performing PCI allocation for 2012 MBA (BIOS) based on Tech Inferno Fan analysis . . .

:: Southbridge port5
@echo -s 0:1c.4 1c.w=6030 20.l=AE90A090 24.l=CDF1AEA1 > setpci.arg

:: Underlying Bridges in order from high to low
@echo -s 4:0.0 1c.w=5131 20.l=AB00A090 24.l=C9F1B801 >> setpci.arg
@echo -s 4:3.0 1c.w=4131 20.l=A700A200 24.l=C5F1B801 >> setpci.arg
@echo -s 6:0.0 04.w=7 1c.w=3131 20.l=A300A200 24.l=C1F1B801 28.l=0 30.w=0 3c.b=10 >> setpci.arg
@echo -s 7:3.0 04.w=7 1c.w=3131 20.l=A300A200 24.l=C1F1B801 28.l=0 30.w=0 3c.b=10 >> setpci.arg

:: The NVidia eGPU
@echo -s 8:0.0 04.w=400 0C.b=20 24.w=3F81 10.l=A2000000 14.l=B8000000 1C.l=C0000000 3C.b=10 50.b=1 88.w=140 >> setpci.arg

setpci @setpci.arg
set pci_written=yes
:: Native TB TH05 used 7:0.0 bridges but when using Sonnet Echo Express Expresscard-to-Thunderbolt

v:\config\startup.bat


call vidwait 60
call vidinit -d %eGPU%
call pci.bat
call chainload mbr
call speedup lbacache

That's exactly what Pierre Dandumont (Tomshardware France) has just done to eradicate error 12 against his eGPU along with his iGPU active on his 2012 MBA + NVidia Quadro K5000 via Sonnet Echoexpresscard eGPU implementation. You can see his iGPU+eGPU are now both working in the youtube video below. Though he's using a ViDock expresscard adapter rather than PE4L/PE4H solution, something I discourage here due to comparatively poor value-for-money:

Link to comment
Share on other sites

Nando4,

Thanks a lot for the info! Much appreciated! I'm nearly complete on my setup. I will contribute my own personal rig thread in the e-gpu forums once I compile everything.

Side question. Looks like Pierre is running a TB hub with a SATA drive. Any idea how he is pulling that off? Do you know if the eGPU takes a performance hit from doing such? Would be really nice to have a dedicated external Windows7 drive!

Thank you!

Link to comment
Share on other sites

Further inspection Pierre is directly hooked into the echo. However would there be a bandwidth drop thus performance hit. If you placed chained a thunderbolt external drive in with a e-gpu? Just curious.

Link to comment
Share on other sites

Further inspection Pierre is directly hooked into the echo. However would there be a bandwidth drop thus performance hit. If you placed chained a thunderbolt external drive in with a e-gpu? Just curious.

This is an interesting scenario. In a native Thunderbolt configuration there would be a performance drop in a daisy-chained configuration as the 10Gbps pci-e pipe would be shared between video and data. You however are using a Sonnet Expresscard TB-to-expresscard adapter. There it uses slightly less than 5Gbps of the available bandwidth. Meaning there is still another 5Gbps that's untapped. Unless your external TB enclosure is running RAID, individual SATA-II/SATA-III drives would be limited to 3/6Gbps bandwidth. Meaning they'd be using the other half of available bandwidth under full sequential transfer loads with little if any affect on your eGPU performance.

Link to comment
Share on other sites

"I've gone through all the steps. Added the mba 2012 pci.bat file that Tech Inferno Fan kindly provided. But I'm still seeing the error 12? Not sure what is wrong here?"

Nevermind I fat fingered my startup file! Doh. Everything works 100%! Thank you!

  • Thumbs Up 1
Link to comment
Share on other sites

  • 2 weeks later...

Hi I found your project very interesting and I would like to buy everything to make a similar device.

you mentioned that for a Macbook Air 2013 (bought on August 24th) it is the same configuration and the same process isn't it ?

However I would like to know two things:

- First, (Maybe a stupid question but did not see anyone writing about it) Can I connect an external screen to be able to use games on a much bigger screen than the macbook air 13" if yes is it worthy ?

- Second, what do I need to change to configure the e-gpu on a macbook air 13" mid-2012 ?

Many thanks in advance

Link to comment
Share on other sites

Quote

Hi I found your project very interesting and I would like to buy everything to make a similar device. you mentioned that for a Macbook Air 2013 (bought on August 24th) it is the same configuration and the same process isn't it ? However I would like to know two things:

- First, (Maybe a stupid question but did not see anyone writing about it) Can I connect an external screen to be able to use games on a much bigger screen than the macbook air 13" if yes is it worthy ? - Second, what do I need to change to configure the e-gpu on a macbook air 13" mid-2012 ?

Many thanks in advance



Yes, an external LCD works. It is most definitely "worthy" as performance is better using an external LCD than using the internal one. The internal one sees an average 19% performance degradation as a result of using some of the narrow TB/expresscard bandwidth for the internal LCD image data.

2012 13" Macbook Air + PE4L-EC060B + Sonnet Echo Expresscard adapter in BIOS/MBR (bootcamp) mode eGPU requires the following to eradicate error 12 against the eGPU in Device Manager:

1. Install DIY eGPU Setup 1.20. Check that v: drive exists. If not run c:eGPUeGPU-setup-mount

2.Create the following files using notepad.

v:configpci.bat
@echo off
:: 11/13" Macbook Air pci.bat
:: pci.bat from [url]http://forum.techinferno.com/diy-e-gpu-projects/2735-macbook-air-2012-8gb-th05-560ti-egpu-setup-1-x.html[/url]
:: "7:0.0" reference used in the TH05 replaced by "7:3.0" to accomodate the Sonnet Echo Expresscard adapter

echo Performing PCI allocation for 2012 MBA (BIOS) based of Tech Inferno Fan analysis . . .

:: Southbridge port5 @echo -s 0:1c.4 1c.w=6030 20.l=AE90A090 24.l=CDF1AEA1 > setpci.arg

:: Underlying Bridges in order from high to low @echo -s 4:0.0 1c.w=5131 20.l=AB00A090 24.l=C9F1B801 >> setpci.arg @echo -s 4:3.0 1c.w=4131 20.l=A700A200 24.l=C5F1B801 >> setpci.arg @echo -s 6:0.0 04.w=7 1c.w=3131 20.l=A300A200 24.l=C1F1B801 28.l=0 30.w=0 3c.b=10 >> setpci.arg @echo -s 7:3.0 04.w=7 1c.w=3131 20.l=A300A200 24.l=C1F1B801 28.l=0 30.w=0 3c.b=10 >> setpci.arg

:: The NVidia eGPU @echo -s 8:0.0 04.w=400 0C.b=20 24.w=3F81 10.l=A2000000 14.l=B8000000 1C.l=C0000000 3C.b=10 50.b=1 88.w=140 >> setpci.arg

setpci @setpci.arg set pci_written=yes


v:configstartup.bat
:: Speed up end-to-end runtime of startup.bat using caching
call speedup lbacache

:: wait for eGPU to appear on the PCI BUS call vidwait 60

:: initialize NVidia eGPU call vidinit -d %eGPU%

:: Perform the pci-e fixups call pci

:: Chainload to the MBR call chainload mbr


3. Reboot your system into Windows mode (hit Option key if not default). At the initial Win7/8 bootmenu, select DIY eGPU Setup 1.20, then "automated startup via startup.bat". It will do it's magic and then you'll see the Win7/8 bootmenu again. This time select Win7/8 to bootup with the eGPU configured. Step (3) will now need to be applied whenever you want to use the eGPU in Win7/8.
  • Thumbs Up 2
Link to comment
Share on other sites

  • 2 months later...

Hi Nando,

I am done with my setup which is same as Kloper's [PE4L] + [sonnet Echo Express Pro] + [MBA] + [GTX 680]

Now that I am using much faster GPU (gtx 680) v/s that of Kloper's (gtx 570), the benchmarking results are confusing.

For 3D mark 11 - I have P6037 v/s Kloper's P4900 - which is as expected (due to faster GPU), but ...

For 3D mark 6 - I have 16843 v/s kloper's 19921 - which is wrong/something missing!?

Now, I understand that the overall result is based on both CPU + GPU, and Kloper have a faster CPU (i7) compared to mine (i5), but if you see the result of the graphics along (in detailed scrores) you will see that my graphics FPS is < Kloper's (for 3D mark 6 only).

What is going on here? Since the score is > 15k I am confident that both of us have optimus compression working. Also, my eGPU is working @ PCIe Gen 2 @ x1 link.

Can you please assist if I am missing something??

Link to comment
Share on other sites

Hi Nando,

I am done with my setup which is same as Kloper's [PE4L] + [sonnet Echo Express Pro] + [MBA] + [GTX 680]

Now that I am using much faster GPU (gtx 680) v/s that of Kloper's (gtx 570), the benchmarking results are confusing.

For 3D mark 11 - I have P6037 v/s Kloper's P4900 - which is as expected (due to faster GPU), but ...

For 3D mark 6 - I have 16843 v/s kloper's 19921 - which is wrong/something missing!?

Now, I understand that the overall result is based on both CPU + GPU, and Kloper have a faster CPU (i7) compared to mine (i5), but if you see the result of the graphics along (in detailed scrores) you will see that my graphics FPS is < Kloper's (for 3D mark 6 only).

What is going on here? Since the score is > 15k I am confident that both of us have optimus compression working. Also, my eGPU is working @ PCIe Gen 2 @ x1 link.

Can you please assist if I am missing something??

Primary factor for the lower score would be because you are running Win8.1 versus Kloper's Win7. Win7 gives better 3dmark06 results as noted by Futuremark themselves: Lower windows 8 performance - Page 2

That and of course Kloper's CPU is quite a bit faster (3111 vs 3591). I wouldn't be overly concerned though if you are then consider loading Win7 instead of Win8.1. You are definitely getting x1.2Opt performance and the resolution run of 1280x1024 means that both tests were on external monitors.

  • Thumbs Up 1
Link to comment
Share on other sites

Hi guys,

I have an early-2011 Macbook Pro that has Thunderbolt 10 Gbps. This external graphic card idea is awesome, I wanna try it!

Can you provide me the pci.bat startup.bat configs for this MBP model? Also, can this PCIe adapter work for all nvidia models, even the new ones (with PCI 3.0) ?

Link to comment
Share on other sites

  • Tech Inferno Fan changed the title to 2013 11" MBA + GTX570@4Gbps+c-TBEC2 (PE4L 2.1b) + Win7 [kloper]

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.