Jump to content

15" HP ZBook 15 G2 + 750Ti@16Gbps-TB2 (AKiTiO Thunder2) + Win8.1 [Yukikaze]

Recommended Posts

A couple of months ago, I have received a ZBook 15 G2 from work. This laptop comes with a Thunderbolt2 port, and my six-year old desktop was getting a bit long in the tooth, so I decided to ditch it altogether (as the laptop was better by every single parameter except the video card). After browsing the excellent guides and information repository here on the site I have decided to go for my second eGPU build (the first was a Lenovo X230 running a HD7950 via an Expresscard slot). This is a summary of my experience. What makes it a little different from other, similar, builds is that I am constrained by an Enterprise operating system and I cannot tweak my system to the extent that most home users are able to (I cannot reinstall the OS, I cannot hack the BIOS, I cannot add special bootloaders and so on).



Windows 8.1 64-bit Enterprise installed on a GPT (UEFI) partition (No BIOS mods or any bootloaders added, as this is an enterprise managed system and I cannot do these things).



Laptop: HP ZBook 15 G2

 CPU: Intel Core i7 4810MQ

 iGPU: Intel HD4600

 dGPU: nVidia Quadro K2100M (2Gb GDDR5)

 RAM: 2x8Gb DDR3 1600Mhz

 SSD: Intel Pro 2500 480Gb (Disk encryption enabled)


External Monitor: Samsung 2333T (via HDMI to DVI cable)


eGPU Enclosure: AKiTiO Thunder2


eGPUs Tested:

 Sapphire HD6570 (1Gb GDDR3) [Initial Testing]

 Gigabyte Low Profile GTX750Ti (2Gb GDDR5) [Final Setup]


Setup Choice Thought Process:

1) I have opted to not modify the Thunder2 enclosure in order to not void my warranty. This constrained me to sub-75W video cards. As a result I chose the GeForce GTX750Ti as the best candidate. I picked the low-profile Gigabyte because it was the cheapest GTX750Ti available locally (go figure).

2) The 60W adapter included with the Thunder2 would not be sufficient to power my video card at full load, so I would need an improved power delivery method.

3) I wanted a compact, aesthetic, mobile, plug and play setup (or at least as plug and play as possible). This meant that running an open enclosure or an ATX PSU was not an option.

4) Thankfully, I found out that the Thunder2 can accommodate a 75W card if it is provided with a better power-brick (source) and I also realized that the Dell-branded power-brick from my previous Expresscard setup (on my previous Lenovo X230 work laptop) has the same barrel plug and the same output voltage, but with a higher wattage.


Installation Instructions:

1) Install the video card into the Thunder2 enclosure and connect the enclosure to its power source.

2) Power off the laptop.

3) Connect the external monitor to the eGPU's video outputs.

4) Connect the Thunder2 to the laptop via the Thunderbolt2 cable.

5) Power up the laptop and boot to windows. Note: During the initial setup, windows detected and installed the eGPU drivers automatically.

6) Either the eGPU is immediately functional, or the driver will fail to load with a Code 12.

7) In the case of a Code 12, disable the eGPU in the device manager, enable it again and reboot the system when prompted by windows.

8) When the system boots up again, the eGPU will be fully functional, as will be the iGPU and dGPU.


Note 1: The Code 12 mentioned above only happens (and not always) once per docking. If the laptop shuts down (or reboots) with the eGPU connected and is powered up again with the eGPU still connected, then the Code 12 issue will never occur. It will only appear occasionally on the first docked boot after the laptop was used without the eGPU attached. The above mentioned solution works without fail, however.


Note 2: Note that I only connect/disconnect the eGPU only when the laptop is off since this satisfies my use cases - I did not yet try "true" plug and play. Since I use the laptop docked at home and without the eGPU on the road and I do not hibernate (or sleep) my machine, I never ran into the case where I needed to connect or disconnect the eGPU with the machine powered up.

Note 3: I prefer to use an external monitor as my main one so I have no need to run the internal monitor off the eGPU and I did not try to get this to work.


Note 4: When booting without the eGPU for the first time after disconnecting the dock, sometimes the laptop would do a double POST (the HP logo would appear, disappear, then reappear, then the windows boot will commence). This has no ill effect (other than adding a couple of seconds to the boot time). Consequent boots without the eGPU are not affected (until you dock and undock again at some later point in time).


Note 5: Dynamic PCIe link speed is working. So when the eGPU is under low load, it will drop its PCIe link speed to x4 1.1 instead of x4 2.0. You will see this happen in the attached GPU-Z screenshot. It ramps up back to x4 2.0 when the eGPU is loaded.


Note 6: I did not perform synthetic benchmarking at this time. I did confirm the eGPU works, however: I played Borderlands and Cities: Skylines at max graphical settings at 1080p and tracked eGPU clock rates, PCIe link speed and eGPU load and memory use. All seems to be in order and the eGPU is being properly utilized.


Note 7: I was able to direct all PhysX processing to the dGPU K2100M in the nVidia control panel. Not that I really play anything with PhysX enabled, but the option was available. See next post.


Note 8: The fan in the Thunder2 is incredibly annoying. It is noisy as hell and is audible even at a reasonable distance. Since the GTX750Ti is a very cool running card, I have tried removing the fan from the enclosure. The setup is much quieter, but the temps rise under prolonged loads, reaching a top of 81C. It isn't horrible, but that would kill pretty much any OC room I might have, so I have reinstalled the enclosure fan.


Note 9: Another way to get rid of the Code 12 issue on docking is to power up without the Thunderbolt cable connected, stop the laptop's boot at the BIOS menu (hitting ESC on boot), connect the Thunderbolt cable, then choose the boot drive. When booting to Windows the eGPU is properly accommodated and the Code 12 does not appear.




Edited by Yukikaze
Forgot to attach screenshots, typos, added a note about removing the enclosure fan, added info about GPT/MBR on OS partition, added another note about Code 12 avoidance, Remove PhysX offloading info
  • Thumbs Up 1
Link to comment
Share on other sites

  • 2 weeks later...

I did some benchmarking, and I came across something very interesting which is worthy of its own post:

Moving PhysX processing to the dGPU tanked Unigine Valley performance. Interestingly enough, it did not tank the performance at higher resolutions, to the point where 1080p and 720p produced similar framerate with all other settings remaining the same. I checked PCIe load and it was minimal (which is in line with the expectation, since Valley is not bound by PCIe bandwidth as tested by PCIe scaling tests at Techpowerup, among others). Moving PhysX processing to the CPU improved things, while moving it to the GTX750Ti improved it further (to about 85% of Core i7 4790 + GTX750Ti performance at the same clock). My conclusion is that it was not a PCIe bandwidth issue, but rather that the extra latency introduced by the long PCIe chain (K2100M, CPU PCIe root hub, PCH PCIe switch and controller, TB2 Controller Master, TB2 Controller Slave, GTX750Ti) between the GPUs caused latency in outputting a frame to the screen. It is my recommendation to keep the PhysX processing on the eGPU to avoid such problems.

Link to comment
Share on other sites

  • Tech Inferno Fan changed the title to 15" HP ZBook 15 G2 + 750Ti@16Gbps-TB2 (AKiTiO Thunder2) + Win8.1 [Yukikaze]

More updates:

1) The eGPU went nuts after I started using a multi-monitor (3+internal) setup at work and a single 4K monitor ((plus the laptop screen) at home. When I'd come back home, the laptop would detect the eGPU, but both screens would go black and the system would become non-responsive. I think it was getting confused as to which output the video should go to, or it would try to apply a setting it could not force. Hard rebooting would fix the issue as on the following boot everything worked perfectly, but it became annoying.

2) The first solution to the above was to boot up the machine, connect the eGPU, wait for it to be detected, immediately disable it in the device manager (failing to do it quickly would cause the same issue with the screens going black), disconnect it, reconnect it and enable it. At that point I would be prompted to restart to apply changes and then everything worked after the system rebooted. It was gentler than a hard boot, but very fussy.

3) Since I can't use Setup 1.30 or modify my boot sequence in any way, I had to resort to my limited BIOS options to try and fix this issue. The solution is to simply disable the iGPU in the BIOS (Advanced -> Device Configuration -> Hybrid Graphics set to Disable). Obviously, this will affect your battery life, but it is not an issue for me - I rarely if ever run my ZBook on the battery for more than an hour or so.

4) As a (very) neat bonus, the eGPU became completely plug-and-play! If I connect the Thunderbolt2 cable while booted to my Windows 8.1, the laptop screen goes black, then both the internal and external monitors come to life and everything works perfectly from that point on.


Hope this helps someone with ideas on what to do if problems persist.

Edited by Yukikaze
Clarification on how to disable the iGPU.
Link to comment
Share on other sites

Join the conversation

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

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.