HP's solution to running GPU-accelerated Linux apps on high-end Z workstations: Rely on Microsoft's WSL2
- Reference: 1636712109
- News link: https://www.theregister.co.uk/2021/11/12/hp_z_wsl2/
- Source link:
That is, it enables Microsoft's Windows Subsystem for Linux 2 (WSL2) [1]out of the box on some of its own high-end Z workstations, boosted by Nvidia graphics processors.
CAS me if you can The WSL2 move was among several new "remote experiences" being rolled out by the firm this week. All of them capitalise on the need for company workers to access grunt-heavy remote resources – with the help of its high end Z workstations, natch.
It's got two new subscription products out that both involve a combo of HP's existing remote workstation tech, ZCentral, and software from [2]the company's newly acquired remote PC specialist, Teradici. The idea is that workers on computing-intensive (or graphics-heavy) projects can access the cloud and VMs securely as well as get localised workstation processing from their PCs, Chromebooks, or tablets - all while being centrally managed.
The first is a one-year subscription and bundles in Teradici CAS and ZCentral for $240 per concurrent user and includes support for both and limited access to ZCentral Connect for user-wrangling.
The second includes Nvidia's metaverse hardware and software platform [3]Omniverse for Enterprise, so gaming devs and other design pros can simultaneously work on complex 3D graphics from different locations. That remote 3D workflows bundle includes a three-month trial of Nvidia's new Omniverse platform as well as Teradici CAS for a customer that buys a "qualifying" Z by HP workstation.
GPU [4]pass-through features in modern hypervisors, such as Microsoft [5]Hyper-V , make it possible to use GPU-accelerated applications in Linux VMs. This feature extends to Redmond's WSL2. HP is using this to enable customers who want to do fancy GPU-accelerated stuff with Linux apps on the more familiar (familiar to HP, that is) basis of Windows.
What does this really mean? There are two explanations. One is the simple, take-it-at-face-value one. The other needs a bit of knowledge of history.
Nice easy simple we're-all-friends-now, let's-let-bygones-be-bygones explanation
If you want to build or run complex GPU-accelerated computational applications on Linux, using high-end workstations and high-end graphics cards, it can be tricky. For instance, Nvidia cards need a proprietary binary driver from their creator. Some Linux vendors now include this in their distros, and you can install it using their tools – here's how to do it on [6]openSUSE and here on [7]Ubuntu . On Fedora, it's a bit more [8]complicated .
If the driver version you need isn't there, or your distro is too new, it gets harder. You have to get the drivers directly [9]from Nvidia and install them yourself.
The driver has to be linked against your current kernel, so you need the [10]kernel headers installed. Then you need the correct compiler tools installed.
[11]
If your kernel is too new, the drivers won't build. If the card is too old, then the drivers don't support current kernel versions, and the drivers won't build. Oh, and you have to [12]deny-list the FOSS Nouveau driver so that it doesn't grab the hardware first and leave the Nvidia drivers unable to control it. Which is fine, the Nvidia installer driver does that for you automatically – but then if the proprietary driver doesn't work and you remove it again, the free driver no longer works and it's 1987 and you're back in VGAville.
[13]
[14]
Even if a friendly Linux vendor directly [15]supports your kit, this stuff can still be a nightmare. Someone, somewhere, will need it on some distro you've never heard of and if it doesn't work they'll complain in some comments board and it'll be there forever.
[16].NET 6 LTS and VS 2022: Major releases spoilt by continuing concern about Microsoft's commitment to open source
[17]Felt Qt (might delete later)*: Two non-Gtk Linux desktops have put out new versions
[18]SQL Server on Linux: Canonical offers official support, AWS Babelfish helps users move to Postgres
[19]Microsoft under fire again from open-source .NET devs: Hot Reload feature pulled for sake of Visual Studio sales
So, if there's a way that you can achieve happy contented customers by using some new features of an industry-mainstream OS, then you'd be fools not to use it. Ever since Windows NT, the basis of modern Windows today, [20]came out in 1993, it had a feature called POSIX compatibility.
Originally this gave NT a UNIX-like personality you could recompile your UNIX apps to run on. That turned into [21]the more fully-fledged Windows NT Services for Unix. In the Windows 10 Anniversary Update, it [22]metamorphosed into the Windows Subsystem for Linux: something compatible enough with the Linux kernel that the non-kernel bits of a Linux distro (called the "userland" in the trade) could run on top of it.
But WSL was not actual Linux; it was more like a sophisticated Linux emulator, [23]like WINE in reverse, making it possible to run Linux binaries on Windows, without any trace of an actual Linux kernel. But that doesn't let you run Linux drivers, so it [24]led to WSL2 : a dedicated Hyper-V VM with a real Linux kernel inside, meaning [25]real Linux apps on the Windows desktop. And with GPU pass-through, the guest kernel inside the VM can use a real physical graphics card, meaning GPU acceleration for WSL2.
[26]
Without the complexity nightmare of supporting dozens of Linux distros.
If you are a friendly sympathetic understanding person who hates cynicism, you might not like the next bit.
Jaded, cynical, embittered explanation with historical context
One of Microsoft's oldest tactics is a move known as "embrace and extend" – or the longer version, "embrace, extend and extinguish." It [27]tried with Java . It [28]tried with HTML . It's tried many times and sometimes it worked.
WSL and WSL2 can be seen as Microsoft attempting to embrace and extend Linux: first by making Linux apps into citizens of the Microsoft ecosystem, and second by using Hyper-V to do the same with the Linux kernel itself. If this allows Microsoft partners to simplify their support offerings, it's a strong selling advantage.
HP has been a close Microsoft partner for decades, but it has also, at points, been a competitor: it sold its own processors, PA-RISC, with its own UNIX for them, HP-UX. It used to sell a high-performance email server called HP OpenMail which was a highly compatible direct competitor of Microsoft Exchange.
[29]
Another rival was DEC, which made the first mass-produced 64-bit RISC microprocessor in the business, the Alpha, and had its own UNIX for that, too – DEC OSF/1, later renamed Tru64. And DEC had its own OS, OpenVMS, which ran on the Alpha. By the turn of the century, Alpha was the arch-rival to Intel's 64-bit CPU, the Itanium – [30]co-developed with HP.
But [31]OG PC cloner Compaq bought DEC. Compaq [32]cancelled a 128-bit version of Alpha and then [33]killed the whole Alpha line, subsequently [34]selling the IP to arch-rival Intel.
Then [35]HP bought Compaq , becoming one of the biggest PC vendors around.
Soon afterwards, HP cancelled OpenMail, to customers' surprise and some commentators' suspicion. HP did release some more Alpha machines but decided to cancel efforts to merge Tru64 and HP/UX and just killed off Tru64. To customers' chagrin, [36]little tech made it out. HP also killed off OpenVMS, although it changed its mind and [37]sold it off instead, as it earlier had [38]sold licences to OpenMail.
Bundling WSL2 with Windows, and more to the point supporting it, is good for customers, it's good for HP, and it's good for Microsoft. And it's entirely on-brand for HP, which as you can see from the preceding few paragraphs, has a long history of moves that are good for Microsoft – and as a major partner, that's good for HP, too.
I'm sure it's entirely coincidental that it's not so great for the credibility of desktop Linux. Right? ®
Get our [39]Tech Resources
[1] https://press.hp.com/us/en/press-releases/2021/hp-powers-real-time-collaboration-workflows.html
[2] https://www.theregister.com/2021/07/30/hp_inc_acquires_teradici/
[3] https://www.theregister.com/2021/11/10/nvidia_cuda_silicon/
[4] https://nvidia.custhelp.com/app/answers/detail/a_id/5173/~/geforce-gpu-passthrough-for-windows-virtual-machine-%28beta%29
[5] https://www.theregister.com/2016/01/29/whats_new_in_hyperv_in_windows_server_2016/
[6] https://opensuse.github.io/openSUSE-docs-revamped-temp/install_proprietary/
[7] https://help.ubuntu.com/community/BinaryDriverHowto/Nvidia
[8] https://rpmfusion.org/Howto/NVIDIA
[9] https://www.nvidia.com/en-us/drivers/unix/
[10] https://docs.nvidia.com/datacenter/tesla/tesla-installation-notes/index.html
[11] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_onprem/personaltech&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=2&c=2YY5JbGOeXZKJk2Xz2Cr-CAAAAEQ&t=ct%3Dns%26unitnum%3D2%26raptor%3Dcondor%26pos%3Dtop%26test%3D0
[12] https://clay-atlas.com/us/blog/2021/06/22/linux-en-nvidia-driver-nouveau-kernel/
[13] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_onprem/personaltech&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44YY5JbGOeXZKJk2Xz2Cr-CAAAAEQ&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0
[14] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_onprem/personaltech&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33YY5JbGOeXZKJk2Xz2Cr-CAAAAEQ&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0
[15] https://ubuntu.com/engage/Z-Workstation-Ubuntu
[16] https://www.theregister.com/2021/11/08/dotnet_6_vs_2022/
[17] https://www.theregister.com/2021/11/09/new_qt_linux_desktops/
[18] https://www.theregister.com/2021/11/02/sql_server_on_linux_canonical/
[19] https://www.theregister.com/2021/10/22/microsoft_net_hot_reload_visual_studio/
[20] https://www.theregister.com/2018/07/30/windows_nt_is_25/
[21] https://www.theregister.com/1998/11/11/nt_unix_pack_shipping_next/
[22] https://www.theregister.com/2016/08/02/windows_10_anniversary_update/?page=4
[23] https://www.theregister.com/2018/07/04/wine_25_years_of_microsoft_solitaire_on_linux/
[24] https://www.theregister.com/2019/06/13/wsl_2/
[25] https://www.theregister.com/2020/05/19/wsl2_gui_linux_apps_windows/
[26] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_onprem/personaltech&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44YY5JbGOeXZKJk2Xz2Cr-CAAAAEQ&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0
[27] https://www.theregister.com/2007/12/07/microsoft_java_sun_infamy/
[28] https://www.theregister.com/2010/09/09/microsoft_html_5/
[29] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_onprem/personaltech&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33YY5JbGOeXZKJk2Xz2Cr-CAAAAEQ&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0
[30] https://www.theregister.com/2001/05/29/hp_wears_itanium_underpants/
[31] https://www.theregister.com/2011/08/12/ibm_pc_30_anniversary/?page=4
[32] https://www.theregister.com/1999/02/04/pfeiffer_stopped_128bit_alpha_workstations/
[33] https://www.theregister.com/2001/06/29/don_capellas_justifies_compaq_alphacide1/
[34] https://www.theregister.com/2001/06/25/intel_takes_alpha_from_compaqs/
[35] https://www.theregister.com/2001/09/04/hp_to_buy_compaq/
[36] https://www.theregister.com/2004/12/03/hp_tru64_letters/
[37] https://www.theregister.com/2014/07/31/openvms_spared/
[38] https://www.theregister.com/2002/04/12/openmail_lives_again/
[39] https://whitepapers.theregister.com/
didn't microsoft disable gpu passthrough on hyper-v for security reasons?
How the mighty have fallen.
Hardly only their high-end kit
HP consumer kit is also notorious for crap Linux support. (eg I own an HP 2-in-1 that I still can't put to sleep and wake up again).
HP's approach to ACPI appears to be to throw any old junk in because it's too hard to get right, then sort it out in Windows chipset drivers.