Tuesday, September 27, 2016

VR Gaming with the Alienware Alpha R2 Mini PC - Hardware Upgrade Guide

When I ordered my i5-based Alienware Alpha R2 it was exactly what I had been looking for: A tiny, near-silent PC that was small enough to fit on my entertainment center but powerful enough to play my favorite games on a big-screen TV. Shortly after making my purchase however, I decided to take my first dip into virtual reality with the Oculus Rift- and I was disheartened when I read the steep minimum system recommendations for the Rift.

While these are Oculus's "recommendations" rather than strict requirements, developers writing software for the Rift are targeting hardware at least as powerful as the components listed by Oculus, and if your hardware falls short your VR gaming experience can be sub-par (or even literally sickening, due to lag-induced motion sickness)- and in my case, both my graphics and CPU were fairly below-spec.

Thus began my upgrade journey.


IS THE ALPHA IDEAL FOR VR?

While I love the Alienware Alpha for what it is- a small, powerful-for-its-size living room gaming PC, it is definitely not the first thing I'd recommend to someone who mainly wanted to play virtual reality games and didn't care about the form factor. There are several reasons for this:
  • The on-board graphics in all Alpha models released to-date fall short of current VR minimum recommendations. The recommended GeForce GTX 970 is around 32% more powerful than my Alpha's GeForce GTX 960 graphics, for example. (Note: The recommended specs for the competing HTC Vive are a little strange here: They recommend the NVIDIA GeForce 1060- which is ~8% faster than the GTX 970 or the AMD Radeon RX 480- which is ~13% slower!)
  • Only the i7 models have CPUs that meet minimum VR recommendations. The recommended Intel i5-4590 processor is around 25% more powerful than the low-wattage i5-6400T in my Alpha, based on Passmark CPU scores. (Note: The same Intel CPU is recommended for the HTC Vive, but they also recommend the AMD Radeon RX 480, which is ~20% faster than the i5-4590.)
  • The Alpha only has one video output. Whichever headset you end up going with (Vive or Rift) is going to require an HDMI port, and you will need at least one other video output to drive a regular monitor. While there are solutions (like this special bi-directional HDMI switch) that let you share a single video output, depending on what you need to do and the specific games/apps you work with, sometimes that's just not going to be enough. Trust me, you want multiple independent video outputs.
  • While Alienware offers the ability to use higher-end graphics via the very cool Alienware Graphics Amplifier (AGA), this kind of cancels out the primary appeal of the Alpha: its small and sleek design. The AGA is huge and it adds noise.
  • The Graphics Amplifier introduces some other problems that I'll discuss later, which make the computer less-than-ideal for general use.
If you are thinking about getting into virtual reality and you haven't bought a PC yet, you're going to be better off (both financially and otherwise) by purchasing a VR-certified off-the-shelf unit or building your own desktop with high-end parts. This post is for people like me who already had an Alpha and wanted to make it work for VR.

CLONING AND REPLACING THE HARD DRIVE

When ordering a computer online, I always pick the cheapest storage solution available so I can replace it with the drive of my choosing (you can usually find better after-market storage solutions cheaper than what OEMs charge). In this case, my Alpha arrived with a 500GB Seagate Laptop Thin HDD. The "thin" in the name is accurate, by the way- it is the slimmest 2.5" hard drive I've ever seen, more like an SSD drive in physical size. I replaced it with a Crucial MX200 500GB SATA SSD. Crucial's MX models come with a serial number for Acronis True Image HD, which is a handy tool that I used in the replacement process.

Cloning the factory drive was a bit more of a hassle than I had anticipated, thanks to the computer's UEFI setup and how it affected Windows 10. Here's the whole procedure:
On another PC where I already had Acronis True Image HD installed, I used the Rescue Media Builder feature to create a DVD of the "Acronis bootable rescue media." This is a disc that boots to a Windows-like interface that works largely the same as the installed True Image product.

Next I connected my new SSD drive to one of the Alpha's front USB ports using a StarTech USB 3.0 to 2.5" SATA Hard Drive Adapter Cable. Next I connected my LG Ultra Slim Portable DVD external drive to another one of the Alpha's USB ports and popped in the True Image disc and rebooted the Alpha, expecting to be able to press F12 in order to select the DVD drive at startup...

The thing is, the Alpha's factory configuration does not appear to allow booting from a connected USB device. Users of Windows 8 and Windows 10 are probably familiar with UEFI by now, and how it's increasingly rare to see "Press F2 for system settings" and "Press F12 to select a boot device" options when you first power on a computer. For better or worse, the way this is supposed to work under Windows 10 now is this: Click Start > Settings, search for "Recovery options" and then click Restart now under Advanced Setup, and then click Use a device on the "Choose an option" screen, which should then bring up a "Use a device" screen where you can choose the device to boot from. However, the only boot devices my Alpha reveals are "Onboard NIC (IPV4)" and "Onboard NIC (IPV6)." My connected DVD drive was nowhere to be found.

Here's what I had to do: Click Start > Settings, search for "Recovery options" and then click Restart now under Advanced Setup. In the "Choose an option" screen, click Troubleshoot > Advanced Options > UEFI Firmware Settings > Restart. This got me into the Alpha's setup utility, where I could see where the problem was:


The Alpha's default UEFI configuration for whatever reason doesn't honor connected USB devices. The "Onboard NIC" devices (for LAN booting) were the only internal devices the Alpha exposes (other than "Windows Boot Manager," which is just the option that loads Windows). In order to use my USB disc drive to load Acronis True Image, I had to do the following:
  1. On the Boot tab, choose Disabled for Secure Boot. The setup utility won't let you modify the Boot List Option setting until you do this.

    Note
    You'll see a warning that changing this setting may prevent your operating system from booting. (And it will, but we will reverse the situation later.)
  2. Next, change Boot List Option from UEFI to Legacy. (You'll also probably get another warning when you change this setting.) This changes the "Boot Option Priorities" list to a longer list named "Set Boot Priority."
  3. For 1st Boot Priority I chose USB Storage Device.
  4. For 2nd Boot Priority I chose CD/DVD/CD-RW Device.
  5. And for 3rd Boot Priority I chose Hard Drive. (I don't have any M.2 PCIe drives installed.)
  6. I pressed F10 to save and exit.
  7. Now when the computer restarted I saw the old F2 and F12 options, and I was able to boot from the DVD drive.
  8. Inside True Image, I used the Clone Disk operation to copy my entire internal hard disk image to my attached SSD drive.
You might expect that would be the end of the clone operation, yeah? But you'd be wrong! See, the factory Windows 10 installation assumes your computer is using Secure Boot and UEFI at boot time, and as a result is not available for booting when the computer's in "legacy" mode. So here's how to reverse the process:
  1. Reboot the computer after the clone operation is complete.
  2. Press F2 when you see the prompt to enter the BIOS setup utility.
  3. Back at the Boot tab, change Boot List Option back to UEFI.
  4. Now change Secure Boot back to Enabled.
  5. Press F10 to save and exit, and allow Windows 10 to boot up from the original drive just to make sure your computer's still configured correctly. If it still works, you can now safely replace the drive.
The rest of the process is super easy. Just disconnect the Alpha, flip the unit on its top, remove four screws, and pop off the bottom plate to reveal the drive housing. Just a few more screws hold the existing drive in place, using a custom mounting assembly. Swap out the old drive for your new one and slap it all back together.

UPGRADING THE CPU

If you have one of the i7-based Alphas, don't worry- you're already set. The i7-6700T processor that ships with R2 models is around 24% more powerful than the i5-4950 that Oculus recommends. (Even the i7-4785T that shipped with the R1 Alphas qualifies, surpassing the i5-4950 by about 5% in raw CPU benchmarks.)

But anyone with an i3 or i5-based model will need to upgrade. Of course this is easier said than done. For one thing, when shopping for replacement CPUs you must make sure to get something that uses the correct socket type:
Both generations of Alphas use special T-series processors, which are desktop-class processors that draw less power (and generate less heat) than the standard models or top-performance K-series models that Intel offers. The T-series processors are "OEM parts" intended for computer manufacturers and system builders, not individual consumer purchase. You can't buy T-series processors at your local Best Buy, and you will have a hard time finding new, non-refurbished T-series CPUs online at any sort of reasonable price.

The good news is that you can safely install non-T-series CPUs in the Alphas, but this comes with some caveats:
  • To avoid melting your computer, the Alpha powers your replacement CPU at T-series levels, more or less delivering T-series performance, regardless of your CPU's stated clock speed.
  • The only processors powerful enough for VR that Alienware has officially approved for use in the Alpha are hard-to-get T-series models. (For the R1s it's the i7-4765T and i7-4785T, and for the R2s it's the i7-6700T.) While non-T processors have been proven to work by Alpha owners like me, using them in your Alpha might void your Dell warranty.
I ended up ordering an Intel i7-6700 processor. The Intel i7-6700K might also work, but it costs more and it wouldn't deliver any better performance. (Anyway, the K-series chips are designed for roomy, well-ventilated PCs with high-end cooling systems, not cramped, air-cooled systems like the Alpha.)

The CPU replacement procedure was quite simple:
  1. Disconnect all cables and place the unit on a clean, flat surface in a static-free environment.
  2. Remove the bottom plate of the Alpha (4 screws).
  3. Flip the unit over and slide off the top cover.
  4. Pop the fan housing off of the CPU and set it aside.
  5. Before removing the heat sink, take note of how it's installed (there's a little gap in one side that has to be in a certain position in order for you to re-assemble the PC later; it's possible to install the heat sink in the wrong direction before you realize what you've done). Then remove the heat sink (4 screws) and set it aside.
  6. Replace the old CPU with your new one. The i7 processors are easy to line up correctly, since they have a marked corner that lines up with the marked corner on the socket.
  7. Apply some thermal compound to the new CPU. I used a slightly-less-than-pea-sized drop of Arctic Silver 5, which has worked out just fine, but I've since read that Arctic MX-2 or Arctic MX-4 might perform even better. (Arctic and Arctic Silver are different companies.)
  8. Clean the old compound off of the heat sink then screw it back into place, making sure it's positioned the same way it was before you removed it.
  9. Replace the CPU fan (and re-connect it if you disconnected it earlier).
  10. Replace the top cover.
  11. Flip the unit back over and replace the bottom plate before plugging everything back in.

UPGRADING THE GRAPHICS

With the R2 generation of Alphas, Alienware introduced the ability for some models to offload graphics capabilities to an external desktop graphics card via the Alienware Graphics Amplifier.

Important: At this time, the only Alienware Alpha models that work with the Graphics Amplifier are those that:
  • Belong to the R2 generation (ASM200 models, not ASM100).
  • Have NVIDIA GeForce GTX960 graphics. (Therefore, the models with AMD graphics are not compatible, even though their motherboards have an AGA connector.)

Which graphics card should you use?

Before selecting a graphics card to use in you Graphics Amplifier, you should first check this mini technical support FAQ to see which graphics chipsets have been approved for use with the AGA. Next you have to narrow your selection down to a specific model. While shopping, keep a few things in mind:
  • The AGA was designed with NVIDIA "reference cards" in mind, which are around 1.5 inches wide, 4.6 inches tall, and 10.5 inches long. Some very long cards might not fit.
  • The AGA was also designed for blower-cooled cards, which push air along the card's body and out the back of a computer instead of blowing air sideways inside the computer chassis. Here's an example of a blower style card that works in the AGA.
  • If you're shopping for good cards for VR, remember that you'll want something with enough of the right video ports on it. Most (possibly all?) cards supported by the AGA have at least two ports, but you want to make sure they're the right connectors for your video hardware (monitors, VR headsets): For example, do you need HDMI, DisplayPort, DVI, etc?
I got a good price on this Gigabyte GeForce GTX 1070 G1 Gaming card, which is neither reference-sized nor blower-cooled, and it's working out fine- so don't worry too much if you can't find an affordable card that meets all of the above recommendations. Also, both the Rift and my television have HDMI connections for video/audio, but the card I bought has a DVI port, three DisplayPort connectors, and only one HDMI port. Since DisplayPort has audio support just like HDMI does, I picked up this DisplayPort-to-HDMI cable for my TV connection.

Setting up the Graphics Amplifier

You should read the Alienware Graphics Amplifier FAQ before setting yours up. Alienware updates it with the details on the latest supported graphics cards over time, which is important because sometimes brand-new cards have special driver installation requirements that aren't obvious to most users.

The process was pretty painless for me.
  1. First I checked Dell's Product Support site to make sure I had the latest version of the "Alienware External Graphic Amplifier Software" installed. In my case, I found that I already had the latest version.
  2. Next I used the Check for updates feature on the Drivers tab of NVIDIA GeForce Experience program to check for the latest graphics drivers. There were some updates available, so I downloaded and installed the new drivers.
  3. Next I powered off the Alpha.
  4. I installed my GTX 1070 card in the AGA and connected my television's HDMI In connection directly to the GTX 1070 (via the DisplayPort-to-HDMI cable I mentioned earlier) instead of to the Alpha's video out.
  5. Next I connected the Graphics Amplifier to the Alpha using the special AGA cable.
  6. Finally I powered the Alpha back on and logged into Windows. After I signed on it took several minutes for Windows 10 to reconfigure itself to use the correct driver for the Alpha (the Device Manager said I was just using a generic Microsoft display driver until the drivers were fully configured), but once the driver fully kicked in I was all set.

AGA-related Complications

We'll get to the benchmarks in a bit, but first I wanted to mention a few AGA-related issues I've experienced.

The Alpha cannot enter Sleep mode while connected to the AGA.
The only time I ever actually fully shut a PC down is if I'm about to take it apart (or put it in storage). Instead I configure all my computers that don't have to remain on 24/7 to enter S3 (Sleep) mode when I press the power button, or after a period of inactivity. Sleep mode's much better for me than Hibernation (S4), because a PC can enter and wake from Sleep mode nearly instantly while Hibernation usually takes a fair bit more time.

Anyway, after setting my Alpha up for use with the Rift, I went crazy for a couple of days trying to figure out why I couldn't put my Alpha to sleep. No matter which power scheme I chose in the Windows Power Options control panel, there wasn't even a "Put the computer to sleep" option to set a sleep time-out.

I posted about my problem to the Dell support forum, and unfortunately it turns out that as long as the Alpha is connected to the Alienware Graphics Amplifier, Windows Sleep mode is disabled. I'm pretty unhappy about this, but that's the current state of things. Currently I just shut my Alpha off when I don't need to use it. It's literally the only computer I own or use that I actually have to turn off.

Wake-from-USB is disabled by default (and doesn't work correctly when enabled)
Another thing I like to be able to do is wake my computers by wiggling a mouse or touching a keyboard. I have a number of computers in physically inconvenient locations, but I can wake them up via wireless keyboards/mice because their wireless dongles are USB devices.

Although the keyboard and mouse that ship with the Alpha are wired, the computer comes with a hidden USB 2 port on the underside of the unit explicitly intended for wireless keyboard/mouse dongles. Great, right?

Well, let us for a moment put aside the fact that as long as your AGA is connected to the Alpha, you can't even put your computer to sleep, so there's no point in being able to wake from USB. During the days when I was trying to troubleshoot the sleep problem, I ran across another pretty ridiculous problem.

The Alpha ships with the USB Wake Support option disabled in BIOS. (To enable the feature, you must first disable the "Deep Sleep Control" feature in the Advanced tab, and then change USB Wake Support to Enabled. Note that you probably won't be able to Hibernate after doing this.)

You must disable Deep Sleep Control in order to enable USB Wake Support.
Remember how I said that I have to completely power down my Alpha now, since there's no Sleep option? Well when USB Wake Support was enabled, my computer kept instantly powering back on as soon as it shut down! It would power off and then immediately power back on and start Windows. So I couldn't put the computer to sleep, and I couldn't shut it down either! Needless to say, I re-disabled USB Wake Support once I realized what it was doing.

The USB ports on the Alienware Graphics Adapter are not reliable.
One really cool-on-paper thing about the AGA is that in addition to housing a desktop graphics card, it also serves as a 4-port USB 3 hub. This would be an excellent feature for VR purposes (the Rift, for example, needs 3 USB ports, when you consider the headset, sensor, and game controller), but unfortunately it just doesn't work that well. I'm currently only able to use a single USB port on the AGA reliably; the one for the Rift headset itself. When I have anything else connected to the AGA USB ports, those devices just randomly disconnect and reconnect. The Rift's sensor couldn't even maintain a USB connection long enough for me to get through the initial Oculus setup wizard. Both my Xbox One controller dongle and my Rift sensor are plugged directly into the Alpha's rear USB ports. I've heard other AGA owners complain of this same limitation. It's a real shame.

PERFORMANCE BENCHMARKS

I performed benchmark tests at every step of the way in the upgrade process so I could measure the impact of upgrading the graphics and processor. For reasons I can't explain, I somehow lost the 3DMark scores from the baseline 6400T/GTX960 configuration, however I have Passmark scores from all four CPU/GPU combinations, so I'll do those first:

PassMark PerformanceTest

Here are the raw scores for PassMark PerformanceTest 8, for each of the four configurations I tested:


As you can see, upgrading from the i5-6400T to the i5-6700 alone delivered a 41% gain in raw CPU performance while upgrading from the on-board GTX 960 to the AGA-hosted GTX 1070 resulted in a 36% jump in graphics performance. Passmark doesn't weight 3D graphics too heavily in its overall score, explaining why the final PassMark score is only 23% higher than the base configuration.


The Alpha throttles non-T CPUs.
According to the PassMark site, a standard i7-6700 running under normal circumstances should get a CPU score of 9967. As you can see in my test results on the alpha, my 6700 scored 9069.8 on the 6700/1070 test, which is closer to PassMark's rating of the 6700T, which is 8918. So my Core i7-6700 seems to perform a little better than a 6700T would in the same system- but not by much. I did not try putting my 6700K in the Alpha. I was worried that the Alpha might not be able to rein that one in. I'd like to hear from anyone who's tried it.

Futuremark 3DMark 11

And here are the results from the 3DMark 11 "Performance" suite of tests (these tests run at 1280x720 resolution). Again, sorry I lost the scores for the i7-6400T/GTX 960 combo.


From these scores we can see that as far as gaming goes, the CPU makes the biggest difference in physics computations (34% boost in Physics when upgrading to the i7-6700) while the graphics card upgrade resulted in huge pure graphics gains (60% increase in Graphics score when switching from GTX 960 to the GTX 1070).



Temperatures

A big concern I had before replacing my CPU was TDP- the amount of heat generated by the CPU during normal use. The tiny Alienware Alpha was designed for low-wattage processors for a reason: They generate less heat, and thus don't need huge and complicated cooling systems. I was worried that the higher clockspeeds of the i7-6700 (whose TDP is twice the 6700T) or i7-6700K (whose TDP is 3x the 6700T!) would drive the Alpha beyond its cooling thresholds, resulting in (at best) poor performance or (at worst) physical damage to the CPU and motherboard.

I was pleased to find that the Alpha managed to keep the temperatures in a safe range:
  • Idle: Average ~44 degrees (C) Recorded range: 39-57
  • No Man's Sky at 1920x1080 fullscreen: 63 degrees (C) max
  • Elite Dangerous in VR mode on the Rift: 62 degrees (C) max

VR Compatibility Tests

After all the upgrades, here are the results of the Oculus Rift Compatibility Tool:


And here are the results of the SteamVR Performance Test:
 

The actual VR performance of the Alpha has been excellent so far. All native VR titles I've tried with it have worked without a hitch. Here's the whole setup, to give you an idea of scale and space required for both the Alpha and the Graphics Amplifier. At the bottom is the Logitech K830 Illuminated Living-Room Wireless Touchpad Keyboard I got for the setup, so I can use the Alpha from the couch. The wireless dongle is connected to the Alpha's hidden USB 2 port.