2014-08-05

(MacOSX 10.9.4 edition) How to recognize GPGPU via Thunderbolt external PCIe Box at MacOSX

Hey guys!
This is an article about how to recognize GPGPU via Thunderbolt external PCIe box at MACOSX 10.9.4.

Up to 10.8 was working. but after updating to 10.9 Mavericks, your GPU might not working. Or it does not work with GTX TITAN Black or 780Ti.
It is because GeForce driver in the 10.9 (Mavericks) is old.

INGREDIENTS
  1. Mac (MacBookPro Early 2013)
  2. NA-211TB (New version. Power up to 300W PSU)
  3. Text Wrangler (Text Editor)
  4. CUDA driver mac edition (from NVIDIA)
  5. NVIDIA Web Driver (ver 334.01.02f02) *modified version
Downloading of the latest driver refers to the following URL.
Also, rewriting of the kernel extension files, please refer to the previous article.
ok, let's start.

Step1.
Rewrite a kernel extension file. *see previous article

Step2.
Download and Install the CUDA driver.
http://www.nvidia.com/object/mac-driver-archive.html

Step3.
Download and install a modded Web driver.
(See the the following threads: http://forums.macrumors.com/showthread.php?t=1748213 )
Usually, NVIDIA's official Web driver will do a system check.
Official web driver can only be installed on MacPro 2008, 2009, 2010.
If you are using a iMac or Mac Mini or MacBook Pro, you can't even install.
But Modified Web driver avoids the system check.
Modded Web driver file name is ModdedWebDriver-334.01.02f02.pkg.
( file mirror: https://app.box.com/s/wa2tblhb4y5dtd3fgh1z )

Step4.
Finally, clear the cache of the kernel extension.
Start a terminal.app and type the following command.

sudo kextcache -system-caches

Finish!!
To turn off the power once, connect with Thunderbolt cable NA211TB and mac, and turn on the power.

If successful, GPU name will be displayed here.
If it does not work. Many mistakes's rewrite of the kernel extension.
Please check the contents of the kext file again.

GPGPU board that is able to operate confirmed by external expansion box up to the present are as follows.
  • GeForce GTX760
  • GeForce GTX780 6GB edition
  • GeForce GTX680
  • GeForce TITAN
  • GeForce TITAN Black
Note!! This operation is at your own risk. We strongly recommend that you take a backup necessary before starting work.




3 件のコメント:

Chihte Hsu さんのコメント...

Hello, thanks for your tutorial. I got two questions want to ask.

1. Could it run GPGPU by using openCL in Xcode under MacOS 10.9? If yes, one still need to install the modified driver you post right?

2. Some people said that thunderbolt cannot pass data from graphic card in MacOS. Then, what is it possible for us to do GPGPU by external graphic card.

Sorry for lots of questions.

Chihte Hsu さんのコメント...

Hello,

First, thanks for your sharing about how to setup this. I'm wondering have you tested if it would work for openCL under Xcode? Cause I'm thinking buying a NA211TB to build up an GPGPU environment for writing openCL. Thanks!

maxserve さんのコメント...

Hi Hsu,

Thanks for your comment.

1. I think it is no problem. NVIDIA's GPU board can handle OpenCL.
And If you're using a Mac other than the MacPro, you need to install the modified driver.

2. It is wrong. Thunderbolt can pass data from graphic card in MacOS.
However there are cases where performance falls Using the video output.
In that case, Assign to the GPU board lower performance of different video display. External GPU should only be calculated.