Surface Pro 3 Tip: Hyper-V vs. Connected Standby

Surface Pro 3 has attracted interest from a wide range of new user types, including IT pros, business travelers, developers, creative professionals and more. But this expansion of the user base often results in obscure issues that impact certain users doing certain things. And here's a great example: The Hyper-V functionality in Windows 8.1 doesn't play nice with Surface Pro 3's Connected Standby functionality.

If you're not familiar, Hyper-V is Microsoft's virtualization platform. It debuted in Windows Server 2008 and is designed first and foremost for such systems, and of course for cloud-based platforms like Microsoft Azure, where customers can run virtualized PCs remotely. Hyper-V can be used for many reasons, but in the context of the Windows client, it's most often used by developers who need to test their apps in different OS versions.

It's also a requirement for Windows Phone 8+ software development, since the device emulators that you test your new apps on run within Hyper-V. And that's why Hyper-V ended up on my Surface Pro 3: I had installed Visual Studio 2013 Express for Windows, which is used to create Modern apps for Windows 8.x, Windows Phone 8.x apps, and universal apps that can run on both platforms.

(I have never stopped dabbling with software development—in fact, I spent hours last night on this very task—and also use these tools to better understand both what's happening under the covers and what Microsoft really names things.)

Visual Studio runs wonderfully on Surface Pro 3, especially the version I have, with its 8 GB of RAM and speedy 256 GB SSD. It's a natural pairing, and Surface Pro 3 an ideal mobile development workstation.

If you're familiar with Hyper-V, you know that it hasn't always played nice with power management, which makes sense given its server/cloud roots. But the version of Hyper-V in the client versions of Windows 8+ is a little different. It's called Client Hyper-V and Microsoft has evolved this platform to accommodate some of the needs of a typical PC. So it supports Wi-Fi based networking, for example, and can operate normally with the Sleep and Hibernation power management modes.

There's just one problem. Surface Pro 3 includes support for advanced, device-like Connected Standby (now called InstantGo) power management functionality. Indeed, it's one of this device's key differentiators. But Hyper-V is not compatible with Connected Standby. So if you install Hyper-V on Surface Pro 3 (or any other Connected Standby-based system), it disables Connected Standby.

In real world terms, what this means is that Surface Pro 3 stops acting like a device and acts more like a PC. When you close the Type Cover, the machine doesn't sleep. If you press the button to wake it up, it comes up out of hibernation (i.e. boots for several seconds) instead of just coming on instantly. It's not horrible. But it's not the fluid, seamless experience that Surface Pro 3 users expect.

You can see what's going on by using the powercfg.exe command line utility. Surface Pro 3 will normally report that it supports Connected Standby, Hibernate and Fast Startup.

But if you enable Hyper-V, Connected Standby is no longer listed. Only Hibernate and Fast Startup are supported.

There is a workaround, and its applicability will depend on your needs.

If you're only using Hyper-V occasionally, you can disable and enable Hyper-V on the fly via an admin-level command prompt. This information comes courtesy of Microsoft program manager James Clarke (via Rafael Rivera, my Windows 8.1 Field Guide co-author).

To disable Hyper-V and restore Connected Standby functionality, use the following at the command line:

bcdedit /set hypervisorlaunchtype off

To re-enable Hyper-V when you need it (and thus disable Connected Standby again):

bcdedit /set hypervisorlaunchtype auto

The bad news? You need to reboot after change. The good news? It works great.

If you actually use Hyper-V regularly for whatever reason, this isn't ideal, so my advice is to just suck it up and forget about Connected Standby. But at least now you'll understand why the device isn't behaving optimally.

Discuss this Article 30

You can also setup two boot configurations to do this, with a short timer on the settings (which is what I have for my laptop, allowing me to have either Hyper-V or VMware when needed). Adds a few seconds to the boot/reboot, can have default setting without Hyper-V for this case and just a reboot and select Hyper-V option when needing it. Use bcdedit to configure these options (plenty of help out on the internet if you Bing or Google it).

Good grief, why can't this stuff just be a check box in the settings? Ditto the option to enable or disable the hardware windows button and any other options.

There just needs to be a 'Surface' section in PC Settings that covers all of these things in an easy, user-friendly way.

Beyond that: I wish that Windows Phone emulator in the screen shots was part of the Windows Phone app so one can remotely control their phone from their PC. Would be so useful sometimes to just snap it to the side of the screen...

Are there any murmurings or rumours of an update to the way Windows and Windows Phone interact as opposed to how they do now? As in, not at all. ;)

Another negative of client Hyper-V is that it runs all the time. Only one hypervisor can run at a time, so if you need to run VirtualBox or VMWare, you're SOL. This command line toggle has been my solution to this issue, as well. If MS would just institute some means of autolaunching the hypervisor ONLY when a VM is running, both the connected standby and multiple hypervisor issues would be moot. Don't know what it would take, but if you use your awesome powers of influence over the MS devs, I'm sure a solution can be developed. :)

One reason you're seeing the behavior you've mentioned is that Hyper-V is a type one hypervisor, meaning that it runs 'on the baremetal'. That is to say that adding the Hyper-V role to your Windows install takes your host OS and actually shims Hyper-V under it to become the true booting OS. Your OS instance is then the parent partition, which is a glorified VM with access and visibility to host hardware devices.

VMware Workstation and VirtualBox are both type II hypervisors, which run on the hardware, but as children of your host OS. There is a substantial performance hit for this sort of approach to virtualization, but with today's processors and chipset designs, it is less and less of a hit.

I'd also recommend Scott Hanselman's tip (which is similar to this one), except you create a boot menu entry so you can pick if you need Hyper-V when starting up, instead of switching it on and off via command prompt all the time :)

Details like this are things Microsoft really needs to start working on. Doing better. Making use cases for everyone more "fast and fluid"... rather than being full of work-arounds and gotchas.

Here's hoping this issue is fully resolved with "Threshold". No matter how you look at it, this is kind of clunky. The Client Hyper-V should just be compatible with Connected Standby, and there should just be a simple way to enable/disable Hyper-V to allow some other VM software to run, in a very simple and straight-forward way. It shouldn't be so kludgy, and shouldn't require a reboot.

This is a fringe case, I imagine, but it's typical of so many other usage scenarios where things just don't "just work" the way anyone would expect them to.

Now, unfortunately, this is typical Microsoft. A lack of integration between software and hardware. Had this been Apple, they would naturally have fixed Hyper-V so that everything worked correctly. But Microsoft just doesn't care about such details. Just like they refreshed the GUI in Windows 8, but kept the icons from Vista. When Apple refreshes the GUI (as in Yosemity) every single icon and application in the OS is updated.
Don't get me wrong, I like WIndows 8.x and use it daily. But Microsoft lack of attention to detail is frustrating.

To me this is the type of downside you get with rapid release. In the rush to get things out in the hands of users, you frustrate them with incomplete solutions. Connected standby was added in Update 1 to x86. So great, these are the first PC's that support them. Downside is, Hyper-V does not play nice with it, since they have not evolved it to start and stop as needed. Not even sure they can.

So now we have a Microsoft that was slow moving go to a Microsoft that is fast moving, but release have baked ideas for us to dog food. Not sure that is an improvement.

My worry is that they loose focus on the greater long term visions for these products and in the process also drive away they loyal customers.

By the way Paul, when you resize this comment box, you can drag the content windows to be greater than the view window, resulting into your text disappearing from out of view. I know you love this powerful content system, so I am sure they will be able to fix it.

This is my problem with Windows RT and ARM being downplayed in the Windows tablet world. Connected Standby is essentially another hack onto x86, a platform that is more than two decades out of date. It was never designed for mobile use, and that's why every attempt to make it mobile-friendly never works right.

Windows RT is a pure platform, with mobile devices in mind out of the gate. The ability to remain in a low power state just works. There's no fan needed. There's no question about whether my Surface RT is going to go to sleep, hibernate, Connected Standby, or one of the other 453729 power states that x86 has supported over the last 20 years. Rather than pushing x86 Atom processors into the low end, I really wish they'd put the emphasis on having developers write to WinRT so that we can finally start phasing out x86 completely on tablets rather than prolonging its overdue end.

I realize that the SP3 is not a low-end device and meets some unique niches that ARM isn't ready to handle, but for the mass market Windows RT is just a better option. Unlike x86 tablets, RT could compete with the iPad because it just works.

Windows RT is not being downplayed, it just doesn't make much sense at all in its current setup. Hence due to that devices with windows RT largely sold super poorly so far.
Good on MS for getting the issues and deciding to work on addressing at least the major ones before releasing yet another device with current Windows RT on it which has no other option than failing.

Windows RT and Windows phone OS have to merge, the desktop has to be removed from it or has to be made all touch friendly (even then wouldn't make much sense to keep it since ARM chipsets just can't run all the desktop software).
MS has to get it going that one can deploy a single app as universal app and it works on that merged windows phone/RT thing. Not reuse some of your code, or similar, no, a developer has to be able to deploy and app as universal app and it will run on both/the merged thing.
Then it also needs a proper name. Windows RT is a very bad name. Even something like GO OS would have been better.

Once some of those major issues are addressed, yeah, then that combined OS for phones and casual usage focussed (smaller) tablets would start to make sense.

Even then though, it would be no use for an issue like this, cause here the topic is about using a desktop app which wouldn't even work on an ARM chipset without rewriting it.
And that will always be the case, some applications are just better suited to desktop/laptop x86/x64 desktop grade chipsets and/or using them with keyboard/mouse etc. which is not the same as windows rt+phone combo OS which would be focussed on using with touch since no desktop apps support, so then sensible to not have the desktop and with that focussed on doing most if not all in touch.

MS just has to get this kind of stuff sorted out, asap.
And make sure it doesn't happen anymore with upcoming surface (pro) devices.
Yeah, people like us who hang out on sites like this one (no insult intended, we know who we are =) ) are used to working around such things.
Looking into why something does not work, fiddling around with addressing it or working around the issue etc.
But: This type of stuff automatically also means the device is way more restricted to people like us.
I would not buy a surface pro for my sister for example, who is a very intelligent person (heart surgeon) but regarding computing devices is more of the kind of: either it works right away and is intuitive and fun to use or its crap and i would rather not use it and use something else which gets it right right away.
I got her an iPad =)
Even i got lazier and next to my windows desktop tower i have a macbook pro and use that most of the time nowadays.
Why do i say all this?
Cause MS has to understand how the markets are changing, people want more functionality presented in ore intuitive fun to use way.
I look at the surface pro 3 and at first glance, it seems like they almost got it. If they had let me on announcement day, i would have bought it in that moment.
But then, as time goes by, its one such tidbit after the other where i think: Come on, it can't be that they ship it in this form, that's just not acceptable anymore nowadays.

It already started with the presentation, the rollout and the shopping site.
There they are at the presentation and spending so much time talking about improved lapability.
Its nice they did this stuff which also is handy when using it like a tablet, but it is still not ideally lapable and with having to use a kickstand in laptop mode also never will be.
Why don't they just also offer a type power hinge cover option which has a large battery and a hinge system where one can position the screen at any angle without using the kickstand?
Would have given them better reviews with people not talking about still not ideally lapable.
Then they talk about ideal as laptop and tablet replacement, but as tablet its still too heavy for when holding it in the hands lengthy, as laptop it makes zero sense that it doesn't come with a type cover added in for free.
Why does the shopping site not have the customisation options:
keyboard:
-type cover: free
-type power hinge cover: add $x
and please on launch day in all countries, not maybe, months later

then the thing does not offer mixing and matching different cpu, gpu and ram combinations.
then the thing is not sold in most variants in most countries till several months after the presentation.
Then in third iteration it still has no LTE which is bad for tablet outdoor use and no second usb port or thunderbolt or large size sd card slot which all are bad for a laptop.

Compare all that to Apple where one can freely mix and match more parts on their shop page for a macbook and usually they are available worldwide within weeks if not days after announcement.
And yeah, Macbooks have more ports etc than the surface pro.

Then the thing is also in the more expensive range, very expensive for a tablet and still on the expensive end for a laptop.

Worst, on top prior to launch and even after launch it is plagued by such software issues where i would automatically not recommend it to a casual computing device user anymore and even as more seasoned one wonder if i shouldn't wait for the next iteration till they figure such things out better.
If i can't use the pen nicely cause i accidently touch the windows button often or some software makes connected standby and other things not work properly or there are various issues where one has to disconnect and reconnect the keyboard or similar to address them, or major desktop apps like the Adobe ones still don't get the scaling working properly out of the box, that kind of finicky fiddling is nowadays just acceptable to less and less people.
That on top of windows 8.1 still not being near ideal, where the desktop is not well tailored for touch and metro stuff still works the way of forcing one away from the desktop with fullscreen stuff, yeah, that makes it a tough sell to recommend to average users, no matter how great the total package is besides all this fiddly shit.

Got my Surface Pro 3 (i5, 128gb) on release day. The Wi-Fi keeps shifting to Limited and I need to restart to get it to reconnect. Happens on all Wi-Fi connections (on any router). Seriously disappointing. I can run my Surface 2 (RT) and the Surface Pro 3 side by side - the Surface 2 never loses connectivity while the Pro 3 loses it continuously. VERY DISAPPOINTING. I keep checking for an update to fix it...nothing yet...

I don't get it why this happened. there are supposed to be tons of engineers inside microsoft used this thing during the development phase of sp3, they are supposed to have visual studio installed, and they didn't know that will kill connect standby? geez

I have to say I cannot believe some of the posters here.
They slam Microsoft because running a Server-Grade feature on a Tablet\laptop hybrid "breaks" one of the tablet features. FYI "breaking" implies causing something to unexpectedly stop working or work incorrectly. The fact that activating Hyper-V removes the option for connected standby, is a statement that the two features are incompatible NOT that Hyper-V "breaks" connected standby.
Running Hyper-V is always going to be an edge-case scenario on this sort of hardware. If you need it, the hardware can deliver it, but with compromise on some of the other (main stream) functionality. Personally, I'll have it.

I was pleasantly surprised to see this shortcoming addressed with the Windows 10 Technical Preview. I have my Surface Pro 3 running the technical preview with Hyper-V installed and Connected Standby enabled. Here is a note on this regarding Windows Server:

i too cannot believe some of the comments and posts made. You cant have a fast sports car with the best handling, with 7 seats for all your family and that can go off road or handle the snow. You guys are just plain dumb if you think that life is without comprise. Sure its annoying (hence why i am looking for a workaround) that Hyper V disables the quicker connected boot, but common, you are talking about hyper V which itself is running all those virtual machines. Its not about just enabling a feature but ensuring it doesnt break something else. I am sure fans of hyper V would moan if Windows broke something for them. These Dev teams are vast and at times seperate too. this is also not the place to criticize the surface or windows - thats not the topic. so happy to hear that Windows 10 improves this....lets be thankful we are not waiting for long boot times anymore and thank MS for releasing multiple tech previews of WIndows 10 - the world is going change again - an no, i am not a windows fan boy....