eGPU on MacBook Pro 4,1 and up with PCIe ExpressCard slot

Discussion in 'macOS Mojave (10.14)' started by Larsvonhier, Sep 8, 2018.

  1. Larsvonhier, Sep 8, 2018
    Last edited: Sep 16, 2018

    Larsvonhier macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #1
    I found a way to a working solution for using eGPUs on old unsupported MacBook Pro machines!

    Currently, I have managed to connect a Zotax/Nvidia GTX650 and an AMD HD6450 to my MacBook Pro 4,1 machines (15" and 17") as external graphics cards (eGPUs) by using an ExpressCard 34mm adaptor, a PCIe 4x socket and an external power supply.
    This runs pretty well and stable under Mojave 10.14 dev. beta 9, 10 & final release with the @dosdude1 patches.
    (The known AMD 30bit-color bug is present in an odd way on the MBP4,1 when using the mentioned card: The colors switch back and forth between being correct as on the internal screen and red-blue flipped contents. The flipping occurs whenever something is drawn onscreen. The glitch is not present with this card on a MBP5,2).

    What I'm going to try next:
    • Bring up acceleration/kexts/metal capability (the GTX 650 reports active metal drivers on a hackintosh running High Sierra) - I suspect that a differently or partly un-patched Mojave will work wonders.
    • Run High Sierra on this hardware setup on the MacBook Pro 4,1. DONE! Full metal support.
    • Swap out the Wifi card out of a i.e. MacBook 5,2 and see if it also works in the internal mini-PCIe. DONE! - works in mini-PCIe slot (aka Airport slot) in iMac 8,1 20" - see page #2
    Also done, see below: Pictures and screenshots...

    I also plan to find/modify/3D-print housings for a range of graphics card sizes and if there will be enough interest and demand, could package and pre-assemble kits. Way to go, though...
    I think what I found out might drastically prolong good usability of our vintage hardware!

    -stay tuned...
    (I do also update this post #1 from time to time)
     
  2. Larsvonhier, Sep 8, 2018
    Last edited: Sep 8, 2018

    Larsvonhier thread starter macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #2
    "Screenshots" ;-)
    HD6450 info on external TFT and info on GTX650 on internal screen.

    Good thing with eGPU cards: You don't have to get the Mac versions (PC cards will do) or re-flash for having a boot screen -> the system keeps its startup behavior and shows boot selector, boot progress etc. on the internal MacBook Pro screen, then (after loading kexts) expands to externally connected eGPU-screen(s). Login prompts still remain on the internal screen. Pretty convenient!
     

    Attached Files:

  3. Larsvonhier, Sep 8, 2018
    Last edited: Sep 16, 2018

    Larsvonhier thread starter macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #3
    btw, this might possibly also work on iMacs and MacBooks if Wifi functionality is sacrificed and the internal mini-PCIe slot is used for the eGPU adaptor.

    Confirmed, see further below!
     
  4. saudor macrumors 6502a

    Joined:
    Jul 18, 2011
    #4
    Haha yeah who uses wifi internally these days :p Apple will be proud of us for using even more dongles.
     
  5. donluca macrumors newbie

    Joined:
    Jul 30, 2018
  6. Larsvonhier, Sep 8, 2018
    Last edited: Sep 8, 2018

    Larsvonhier thread starter macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #6
    Yeah, I noticed the possibility to connect via thunderbolt. Just that my old macs do not have such noble interface ;-)
    So the clue here is to connect eGPUs via ExpressCard port on MacBook Pro 4,1 5,1 5,2 and upwards (except MBP5,3 15" has no express card slot any more in "favour" of SD card crap).
     
  7. donluca macrumors newbie

    Joined:
    Jul 30, 2018
    #7
    I see. Can you share a link of the ExpressCard adapter you're using?
     
  8. Larsvonhier, Sep 8, 2018
    Last edited: Sep 8, 2018

    Larsvonhier thread starter macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #8
    Now verified to work on MacBook Pro 5,1 and 5,2 too (tested it on my 5,2), see "real" screenshot.
    Interesting that the hardware is detected in "ExpressCard" slot here and shows up as "PCIe #3" on older MacBook Pro (4,1). Works just the same.
    --- Post Merged, Sep 8, 2018 ---
    Sure, now that´s reproducible on various machines.
    https://www.ebay.de/itm/V8-0-EXP-GDC-Laptop-External-Unabhängigen-Karte-für-Beast-Dock-Expresscard-AC773/302788305680?ssPageName=STRK:MEBIDX:IT&_trksid=p2057872.m2749.l2649

    I got mine for around EUR 30,- and it´s version 8.5c - so anything below might behave differently. Many are advertised as v8.0 or v8.4. Be aware that your mileage may vary...
    --- Post Merged, Sep 8, 2018 ---
    Even more exciting: It seems to be implemented so well in Mojave that you can hot-plug and unplug it (as long as you disable the card with the dropdown menu bar tool, see screenshot). The system reacts just like connecting/disconnecting an external display-port or DVI monitor!
    If you unplug a running card it resets, though on MBP4,1.
    --- Post Merged, Sep 8, 2018 ---
    Here we go with some real-life impressions. MacBook Pro 5,2 / HD6450 / 19" TFT (VGA)
     

    Attached Files:

  9. jackluke, Sep 8, 2018
    Last edited: Sep 8, 2018

    jackluke macrumors 6502a

    jackluke

    Joined:
    Jun 15, 2018
    #9
    Very interesting, for those who lack an expresscard slot or want to save their internal mini-pciexpress slot, probably a solution like this may work: https://www.amazon.com/USB3-0-adapter-20PIN-19pin-expansion/dp/B01ARGE2MS

    linking to the "female" end of the HDMI-MiniPCIE cable.

    It requires also an additional 5V powersupply through a SATA power cable.
     
  10. Larsvonhier thread starter macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #10
    Could be interesting for cMP 3,1 and upwards because there is enough headroom to install the USB3 card in the miniPCIe-slot. MacBooks would have to work without keyboard topcases - and iMac could be out of that game.
    In addition - I´m not sure the NEC 72xxx controller is supported under macOS. Had trouble with PCIe cards and that chip... never made it work.
     
  11. jackluke macrumors 6502a

    jackluke

    Joined:
    Jun 15, 2018
    #11
    I don't know other vendor rather than NEC Renesas who make xHCI female USB 3.0 host External devices, anyway on other forums it seems there are some drivers available for those devices ids.
     
  12. pkouame macrumors 6502a

    pkouame

    Joined:
    Jul 7, 2016
    #12
    All this is very exciting indeed.

    Just to recap, so Mojave out-of-the-box was able to recognize this eGPU via expresscard, i.e. without any additional patches. right?
    Is the desktop extended?
    Lastly, is that Samsung a straight dvi connection? I have an old Apple cinema display that may be just right for this setup.

    Thanks.
     
  13. donluca macrumors newbie

    Joined:
    Jul 30, 2018
    #13
    Thank you so much for sharing this.

    Any word on performance? I'd be really interested to test the performance of a Thunderbolt eGPU vs express card eGPU.
     
  14. Larsvonhier, Sep 8, 2018
    Last edited: Sep 9, 2018

    Larsvonhier thread starter macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #14
    Yes, it´s vanilla Mojave but with the patches by dosdude1´s patcher to make it run on C2D.
    Desktop is extended, not just mirrored.
    I tested various connections on the two working cards I have at hand. DVI works, as does plain VGA and HDMI also. So yes, the cinema display will work.

    Word on performance: It´s only a 1x-(single lane)-PCIe connection to the GPU, but at full 2.5G transactions/second.
    Saw someone playing "Rise of the Tomb Raider" on this adapter on a Lenovo thinkpad C2D. Looked fine in decent resolution - but of course even thunderbolt-1 has roughly 4x the throughput.

    Of course the final goal is to get metal enabled on Mojave with a suitable card, so that most of the calculations can take place on the card and don´t take up too much bandwidth on the PCIe 1x lane.
     
  15. donluca macrumors newbie

    Joined:
    Jul 30, 2018
    #15
    Thanks for clarifying that.

    I think I still have to go for a thunderbolt solution then, since I'll also be gaming on it and I need a decent amount of performance, without taking into account things like Lightroom, Photoshop and Premiere all of which make heavy use of the GPU.

    But it's still nice to see there are alternatives.
     
  16. Larsvonhier thread starter macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #16
    Hm. Just out of mere curiosity: On which machines would you have the choice between thunderbolt and expresscard anyway?
     
  17. donluca macrumors newbie

    Joined:
    Jul 30, 2018
    #17
    I have a mid-2011 iMac 27" which has a Thunderbolt 1 port and I believe (but not 100% sure) the Wi-Fi module on the aforementioned express slot.
     
  18. Larsvonhier thread starter macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #18
    I don´t think the Wifi is an externally accessible express card - rather it is an internal miniPCIe ?!
    Ah, I see: There might be confusion about the "e" in PCIe and the term "express card"... it´s not the same form factor ;-)
     
  19. donluca macrumors newbie

    Joined:
    Jul 30, 2018
    #19
    Ohhhhhhhh I see now! Yeah sorry for creating ambiguity, I made confusion between the two!

    Still, a very interesting solution! I'll keep following this thread. You know, for science. :D
     
  20. Larsvonhier thread starter macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #20
    Here´s the Valley Benchmark running on a good eGPU card with the expresscard interface I found (different CPU, different OS, I know - but still impressive what can be achieved when fully HW-accelerated!).



    As soon as I have kexts up and running, I´ll try the valley on macOS and post results.
     
  21. FNH15 macrumors 6502

    Joined:
    Apr 19, 2011
    #21
    The only machine I can think of with both ports is the 2011 17'' MacBook Pro; it has both ExpressCard 3/4 and ThunderBolt 1 ports.
     
  22. esatamacmodular macrumors member

    Joined:
    Nov 27, 2014
    #22
    nice.. is someone thinking 2x eGPU with one at x4 and one at x1?
     
  23. jackluke, Sep 9, 2018
    Last edited: Sep 9, 2018

    jackluke macrumors 6502a

    jackluke

    Joined:
    Jun 15, 2018
    #23
    I doubt there is a third-party eGPU adapter suited for a Thunderbolt 1 port, maybe is needed a Thunderbolt-to-USB3.0 adapter, while the main thread external GPU seems especially fitted for PCs (lacks the TB1 port) while has only an HDMI-MiniPCIExpress cable on which should be attached something like a USB3.0-to-MiniPCIex(male), then a Thunderbolt 1 should act as an USB3.0 (theorically 5Gb/s bandwitch) eGPU port.

    edit:
    Or for the owners of a Mac with only a TB1 port, something like this may work too: http://www.sonnettech.com/product/echoexpresscard34thunderbolt.html
    to be used in conjunction with the eGPU Expresscard 34mm adapter.
     
  24. Larsvonhier, Sep 9, 2018
    Last edited: Sep 9, 2018

    Larsvonhier thread starter macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #24
    afaik there are commercial TB1 solutions for external GPUs, but you need to enable them to work on High Sierra or Mojave (as Apple requires TB2 minimum for official eGPU support) - but that´s not my focus of this thread...
    --- Post Merged, Sep 9, 2018 ---
    I ordered a miniPCIe-to-eGPU cable for my interface and will test it with the internal "Wifi" slot (miniPCIe) in my MacBook5,2 as soon as it arrives here, and perhaps if I find the time, even in an iMac C2D.
    --- Post Merged, Sep 9, 2018 ---
    Update: Working on MBP4,1/eGPU/Expresscard/High Sierra combo.
    Up to now I get the eGPU initialized (2/3 of boot progress bar, then second external monitor comes up with white screen) and then a stuttering grey/white "busy circle" gets stuck in a loop. Let´s see what the verbose boot output says. Hot-Plugging the card does no harm, does not init the card either but shows "graphics adaptor" in system info but without kexts loaded (for the AMD card at least, will also try with the Nvidia).
    --- Post Merged, Sep 9, 2018 ---
    Update II: Full success on High Sierra!
    Got the MBP4,1 up and running with eGPU (GTX650) with High Sierra 10.13.6 and full graphics acceleration on both internal and external (eGPU) screens. The GTX650 also reports metal compatibility with feature set GPUFamily1 v3 !!
    Up next: The Valley Benchmark on eGPU! (folks, I´m so excited).
     

    Attached Files:

  25. Larsvonhier, Sep 9, 2018
    Last edited: Sep 9, 2018

    Larsvonhier thread starter macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #25
    The Valley:
    Here we go with the scores. I forgot how choppy the framerate was on the old C2D and 8800GT in the MBP 4,1.

    Score and framerates almost x6 on the GTX650 as eGPU. And keep in mind it´s still good-old-Apple-unoptimized OpenGL/CL!

    So it´s 4fps to almost 24fps, see photos.
     

    Attached Files:

Share This Page