Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
Just a few weeks ago, a new VMWare Player was release with DirectX10/11 support. In combination with newer Windows versions this should allow you to run even more modern Windows games.
http://steamcommunity.com/app/221410/discussions/0/523897653293933986/
For my part, as far as gaming goes, I'm of the opinion Steam In-Home Streaming is a more effective and practical way to go for this than Windows on a Linux hosted VM.
GPU passthrough is fantastic, but I believe the catch right now is most nVidia GeForce cards don't support it and nVidia cards have the best current Linux drivers. Kind of a catch 22 situation, in that you basically have to have a non-common, specific and specialized hardware build right now to get access to VM GPU passthrough from a Linux host.
Meanwhile, back on the IHS front, Valve has put a significant amount of engineering into this stopgap solution for how to get Windows games onto a Linux PC.
Wine is a preferable solution, because it's a "pure Linux solution" involving no Windows OS being installed anywhere. But Wine mostly still sucks compared to running native Windows on a real non VM'd PC.
But, if you're gonna compromise your Linux value system and load a real copy of Windows somewhere in the equation, imo, Steam IHS > VM'ing it. There are some quirks and trade-offs with the streaming aspect, but since it's only on an internal, stable, high bandwidth network - they are fairly minor and easily dealt with.
And of course, the upside is a "headless" Windows game server running on real hardware - I hide mine in an unused guestroom where my modem/routers are. It's my "dirty little secret" on what otherwise appears to be a small home network of Linux PCs and laptops - that also just happen to have really good Windows game performance and compatibility across the board.... Somehow... (whistling guiltily) :-)
I would not call wine and preferable soluiton in the same sentance. Wine is not pure linux you are running a windows api layer(s) on top of a system. Also compatablity is umm special.
1) Hide it's idenity from the Nvidia driver
Something like this: "-cpu host,kvm=off"
2) Disable Hyper-V extensions
Something along the the lines of removing these lines from the VM XML file:
<hyperv>
<relaxed state='on'/>
<vapic state='on'/>
<spinlocks state='on' retries='4096'/>
</hyperv>
<timer name='hypervclock' present='yes'/>
As for Wine, Wine Staging is a better option and provides much better performance for most games with CSMT or GalliumNine extensions and hundreds of bug fixes over stock Wine to improve software and game compatibility.
Driver support on the host doesn't matter, the card will only be touched by a generic passthrough driver. There's absolutely nothing standing in the way to using a Radeon card for passthrough.
By the way, while IO operations are considered the general bottleneck of virtual systems I did notice that for me a host ext4 drive being passed through via SMB over the VM's virtual network card actually performs better than a native NTFS drive being accessed by Windows running on bare metal - I always have the shortest Payday 2 update installation time among my buddies.
Well yeah... :-) Of course there's a Windows emulation layer involved, of course it's not "pure Linux" in the sense that it has a Windows API layer - that's the whole raison d'etre for Wine. It's pure Linux on the back-end though - with the outputs leaving the compat layer for OpenGL/Linux, you require no Windows installation to run it. Wine itself is a Linux application that you only need Linux installed to run. That's all I meant by "pure Linux solution".
I mostly agree with you that Wine doesn't work so hot - at least it hasn't for me so far. We probably differ on the overall value of it though, from a strategic perspective. In my world view, if Wine worked on par with Steam IHS, it would be of huge value to switching over from Windows to Linux in general. I know from your previous posts, you disagree there.
And it's mostly an academic disagreement, because let's face it, Wine will probably never work that well. And if it ever did begin to work that well, MS probably would decide to vector a team of their lawyers onto shutting it down by any means necessary, anyway.
I remember you mentioning that in the GTA-V thread, along with native DLL overrides. The next time I mess around with Wine, I'm going to explore those options more, and probably also just buy Crossover to show support for the effort.
I bought Crossover as well; It's a good product. I like PlayOnLinux more but it has a stable Wine version with many fixes for apps and games. I'll probably renew my Crossover subscription once Codeweavers releases an initial, semi-working DirectX 11 implementation in Wine that can support some games.
Yep, in the load-Windows-anyway solutions, VirtualBox is a fine VM, but not good for gaming. VMWare Player is better, and Steam IHS is best (imo) if you take the hit of running multiple real PCs vs. one PC decked out w/ everything.
Virtualbox is a good VM program but it fails at 3D acceleration. In constrast, VMware Player and Workstation have a superior emulated graphics driver in their Guest additions (aka VMware Tools). It supports upto DirectX 10 with Windows 10 guests, which you can download for free legally (Windows Tech Preview or 90-day trial of Windows 10 Enterprise). It's not as good as GPU passthrough (which a lot of hardware doesn't support) but I think it can reach upwards of 75% of bare metal GPU performance.
There are a couple alternatives as well that aren't tied down to Steam:
Splashtop
Jsmpeg-vnc (Streams games like IHS on a LAN but to a web browser)
LiquidSky (Like OnLive but full desktop and Steam access on a rented cloud server)(Linux support coming within days they claim--many ETA setbacks so far)
I tested all of these and they work. I just found about the second option a couple days ago and been playing around with it. I developed a simple script to integrate it better into Linux google chrome with the "-app" mode feature. It has one major flaw--no sound support. However, I sort of got it working by re-directing audio to my USB headset via a VirtualHere network USB server.
Agreed, the promised DirectX 10/11 from Codeweavers is pretty much what I'm waiting on too before giving Wine another try. If I could get games like GTA-V, Far Cry 4, Inquisition, etc. running well in it, that would be a huge victory for Wine.
On the admit-defeat-and-grab-a-copy-of-Windows side, I'm pretty much through pursuing VMs for Windows game compatibility, since IHS works considerably better for my home scenario and prefs (I just set it to "go bananas/no bandwidth limiting" so the visuals are on par with real HDMI, and the lag is still hardly noticeable on a 64 Mbps stream on my wired network, + no DD 5.1 sound doesn't matter to me).
Cool, looks like you've been doing a decent amount of research and testing here too...
For games, imo Steam IHS is currently working pretty good. With the unfortunate proviso - from what I've found - that Windows 7/10 makes the best IHS Steam server. A good IHS experience is heavily tied to a good hardware encoder on the server. And currently, Steam for Linux doesn't work as well for server side. For one main reason, Linux Steam doesn't use "Desktop NVFBC H264", which as far as I can tell is a Windows only nVidia driver associated with nVidia ShadowPlay?
In any case, from my experience, "Desktop NVFBC H264" is by far the best general encoder at this time (general meaning works fantastic with almost any game). The other hardware encoders tend to have problems of various kinds in many to most games. And it's a Windows only driver.
Which is really unfortunate for my anti Windows tastes, because even though my game server is a dual boot with both Windows and Ubuntu on it, it means certain higher end games that are now ported to Linux I still end up loading the Windows version of. Simply due to the fact they stream like utter crap from Linux and stream fantastic from Windows :-/
Hopefully, the Linux Steam client gets access to a corresponding high performance streaming encoder soon, so I can leave my game server booted to Linux more often than I do now.
I haven't done much testing of Steam IHS for apps, would be convenient if they got this working again though! Of course, there's always just standard RDP and the Remmina Client for that - but I found that has a real gotchya when used in conjustion with Steam IHS, to which someone wrote a good logoff script to fix:
http://steamcommunity.com/groups/homestream/discussions/0/540732889170346271/#p3
But Steam IHS would be more convenient for certain high use apps.
I'll have to take a look at those other options you mentioned, like LiquidSky and Jsmpeg-vnc.
I have lost my faith in Wine. I have been trying to use it for nearly 15 years now and out-of-the-box experience is simply a disaster. Wine always needs a tailored set of DLL's that you have to pirate from somewhere. I have succesfully played several games in Wine (and in the process worked with Wine developers to get some bugs fixed), but the overal picture is, after all those years, nothing better than terrible.