Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Windows Subsystem for Linux krijgt ondersteuning voor DX12 en apps met gui

Tijdens zijn Build-evenement voor ontwikkelaars heeft Microsoft aangekondigd dat het gpu-acceleratie naar het Linux-subsysteem van Windows 10 brengt. Daarvoor krijgt WSL2 ondersteuning voor DirectX 12 en kan het ook Linux-programma's met gui draaien.

In een blogartikel geeft Microsoft de details over de komst van de hardwarematige grafische acceleratie naar het Windows Subsystem for Linux 2. WSL2 is vanaf de May 2020 Update onderdeel van Windows 10 en bevat bijvoorbeeld een Linux-kernel, maar het subsysteem draait standaard alleen command-line tools. Voor applicaties met een grafische userinterface moet een gebruiker externe toepassingen zoals X11 gebruiken.

Microsoft werkt eraan om dat te veranderen. De stap is het gevolg van Microsofts werk aan gpu-virtualisatie. Het bedrijf ontwikkelt hiervoor een Linux-kerneldriver die een gpu via het wddm gpu-paravirtualization-protocol beschikbaar maakt voor de usermode van Linux.

Volgens Microsoft krijgen applicaties in de Linux-omgeving daardoor dezelfde toegang tot de gpu als Windows-applicaties. Microsoft benadrukt verder dat het om de volledige D3D 12-api gaat die dezelfde functionaliteit en prestaties biedt als op Windows, minus de overhead die het gevolg is van virtualisatie.

Microsoft meldt verder dat het de OpenCL- en OpenGL-lagen voor DX12 waar het aan werkt, ook gaat gebruiken om hardwareacceleratie op basis van die standaarden naar het Linux-subsysteem te brengen. Dat zal gebeuren via de opensource Mesa-bibliotheek. Microsoft maakt de gpu-kerneldriver voor Linux opensource beschikbaar, maar de DirectX-core en D3D 12-bibliotheken blijven gesloten.

Microsoft werkt verder samen met Nvidia aan cuda-ondersteuning voor het Windows Subsysteem voor Linux. Die ondersteuning verschijnt met de komst van Nvidia's komende wddm v2.9-driver. De uitbreiding van WSL 2 is bedoeld om ontwikkelaars die Linux-tools gebruiken binnenboord te houden bij Windows 10.

Tegelijkertijd toont het de veranderde houding van Microsoft richting opensource aan. Recent zei Microsoft-president Brad Smith dat zijn bedrijf 'aan de verkeerde kant van de geschiedenis stond toen opensource explodeerde aan het begin van de eeuw'.

Door Olaf van Miltenburg

Nieuwscoördinator

20-05-2020 • 10:51

151 Linkedin

Submitter: Sp3ci3s8472

Reacties (151)

Wijzig sortering
Mactraider zegt niet dat alles opensource moet zijn. Hij bedoeld, denk ik, dat DX en opensource niet samen gaan. tenminste niet in elkaar op kunnen gaan omdat DX niet onder een vrije software licentie valt, De linux kernel is opensource, en het zou fijn zijn als dat zo blijft. Dat doet niets af aan dat anderen code mogen schrijven en die onder een andere licentie mogen uitbrengen.
Bovendien valt met opensource ook wel een boterham te verdienen hoor! Alleen niet direct met de verkoop van die code.
Ho ho ho... Niet alle developers hebben Cuda support nodig. Misschien is WSL in jouw praktijk nutteloos, maar voor mij en vele anderen is dat dus niet zo.

Zo, terug naar de orde van de dag.
De release van nu doet geen GUI. Dus is het zowiezo nog niet erg bruikbaar behalve voor machine learning/AI/Cuda spul
GUI? Wie heeft er nu perse een Linux GUI nodig? Er zijn meer commandline tools dan ML/AI/Cuda spul hoor.

Windows heeft mijn GUI applicaties, zoals mijn IDE en webbrowser, dingen die Windows voor mijn gevoel beter afgaan terwijl WSL taken op zich neemt zoals builden en hosten, iets waar Linux in mijn geval sterk in is.

Dus... Niet nutteloos als je het mij vraagt.
Ah, WSL is nuttig (gebruik zelf vaker cygwin). De discussie was voornamelijk gericht op het beschikbaar komen van GPU functies in WSL.
WSL wordt toch maar gebruikt door een schamele 150.000 mensen op dese aardbol en kost Microsoft alleen maar geld. Voor AI/ML/CUDA heb ik een laptop met RHEL/CentOS en een desktop met OpenSUSE, die geïnstalleerd staan naast Debian, wat ik tegenwoordig voornamelijk gebruik. Ik vraag me alleen af of de Vulkan driver goed functioneert samen met CUDA.

Windows is voor mij voornamelijk handig om Visual Studio (niet Code) te draaien en helaas een noodzaak om firmware updates te kunnen installeren. Die wordt eens in de zoveel tijd opnieuw geïnstalleerd met de nieuwste versie. Ik vraag me af of de update goed gaat, wanneer de nieuwe versie later deze maand komt of dat ik die dan alsnog opnieuw moet installeren, omdat de boel verziekt is zoals bij zoveel mensen vaak het geval is.
Ach, toen ik laatst een GUI moest draaien viel de rompslomp best tegen, was goed te doen.

https://github.com/stronnag/mwptools/wiki/mwp-in-WSL

Niet heel soepel allemaal, maar het werkte zeker goed genoeg
We have consider the possibility of bringing DX to Linux with no Windows cord attached. I'm not ready to discuss this at this time... but in the hypothetical that we were do this, DX would be running on top of DRI/DRM on native Linux.
Oh wow dacht niet dat ik het ooit nog zou meemaken. Dit is echt groot nieuws.
Dit zou fantastisch zijn, echt gigantisch. het zou bijvoorbeeld proton van steam enorm veel makkelijker maken kan ik me voorstellen.
Op zich helemaal gelijk, inclusief de (super) edit.

Bedenk wel dat het hier bij wsl gaat om een distributie die microsoft zelf uit brengt. Daar kan ze dus aan bijdragen wat ze zelf nodig acht. Volgens opensoure kan (en zal) ze dat ook terug geven aan de community die het op haar beurt kan en mag weggooien.

Daarnaast zie ik dat het hier om de grafische interface gaat. Voor de grafische kaarten zijn er 3 grote spelers waarvan er 1 ook niet met eigen drivers voor linux komt: nvidia. En nu juist die komt microsoft te hulp in deze ontwikkeling. Volgens mij gaat daar een virtuele nvidia kaart onstaan die met nuveau ( de opensource drivers voor nivida) wel gaat werken maar met een nvidia driver pas echt gaat vlammen.

Nee, ik ben het daar ook niet mee eens, ik had liever gezien dat ze 'gewoon' de virtuele driver uit de virtualisatie omgeving gepakt zouden hebben. Liefst de 'hardware accelerated' variant.
Nee, nvidia is nu net vanuit de opensource omgeving niet de juiste partner voor microsoft, gezien haar eigen reputatie met drivers.
Nee, misschien gaan ze met nvidia nu weer 'naar de verkeerde kant van de nieuwe geschiedenis qua opensource'.
Goed punt. Upstream hoeft het niet te accepteren, zolang de code maar open is.

In de praktijk betekend dat doorgaans de doodsteek voor een techniek. Als het niet in de kernel zit, is het ook geen onderdeel van welke intergratie test dan ook, dus dan ben je vaak afhankelijke van losse partijen die na elke nieuwe kernel-release de software opnieuw moeten compileren. Dit geeft ook zo veel gezeik bij Android en het uitbrengen van beveiligingsupdates.
Ik denk dat MS doorheeft dat Vulkan een serieuze bedreiging vormt in hun gaming ecosysteem. De Xbox biedt enige vorm van houvast omdat dat het enige andere platform is waar DX12 op draait en ik denk dat ze beginnen in te zien dat ze het daarmee niet gaan redden. Maar DX naar Linux is wel een opvallende zet.
Maar Microsoft heeft onlangs min of meer excuses aangeboden voor Ballmer's uitspraak, dus dat kan niet meer schuren.
Het is niet de uitspraak die schuurt, maar de fundamentele verschillen tussen hoe code moet worden gedeeld. GNU GPL 2 vs Microsoft Propriatary.
Microsoft is de grooste bijdrager van OSS-code, dus ze zijn er zeker wel voor. Dat erken zelfs ik als jarenlange Linux-gebruiker.
Het is een aanpassing voor WSL2 dus waarom je WSL1 erbij haalt snap ik niet.
@afterburn had het over WSL/WSL2. Ik wees hem er even op dat dit 2 totaal verschillende dingen zijn.
Daarnaast snap ik ook niet hoe je een driver kan construeren als een aanpassing aan de kernel code??
Dat is nu juist precies het punt. Drivers zitten in Linux in de kernel tree en vallen dus per definitie onder de GPL. Dat je bij het compileren van de kernel er voor kan kiezen bepaalde drivers niet mee te nemen veranderd daar niets aan. De driver die MS gaat maken moet dus hoe dan ook open source zijn onder de GPL versie 2 of 3. Zoals ik aan geef kan je hier via DKMS wel onder uit komen maar dat is een nachtmerrie om te beheren want je moet dan bij iedere kernel update je module opnieuw compileren. Dit is wat bijvoorbeeld NVidia doet met hun grafische driver voor Linux. Het kan dus wel, maar het is niet wenselijk.
Er wordt niets aan de kernel zelf aangepast, er wordt alleen een extra driver toegevoegd voor een heel kleine niche, namelijk de WSL2 omgeving.
Dat is precies het probleem. Zelfs als MS met een volledige open source kernel driver komt onder de GPL, dan nog is de enige functie van deze driver om 2 stukken gesloten code aan elkaar te knopen, namelijk een Linux userspace D3D12 driver aan de ene kant en Hyper-V aan de andere kant. De geschiedenis leert ons dat de Linux kernel maintainers dit soort code niet accepteren omdat het technisch gezien wel voldoet aan de eisen, maar de intentie is om onder de GPL uit te komen.
Voorts gaat het om een koppeling met een virtualisatie laag en niet om een rechtstreekse koppeling met de D3D technologie. Ik zie het meer als een VMWare Tools of Virtual Box Tools toevoeging (bevatten beide ook een of meer kernel drivers) die praat met de VMWare danwel VB danwel HV virtualisatie laag. Dat die laag aan de andere kant praat met D3D of OGL maakt in dat geval dan toch niet uit ?
En als datzelfde voor VMWare geen probleem is, waarom zou dat dan voor Microsoft wel een probleem moeten zijn?
Zoals hierboven beschreven is het eigenlijke probleem de gesloten code van MS waar deze open source driver aan beide kanten mee gaat praten. In de voorbeelden die jij noemt is de Linux userspace code open source, evenals delen van de virtualisatie software.

[Reactie gewijzigd door rbr320 op 20 mei 2020 14:26]

[/delete]

[Reactie gewijzigd door Alfa1970 op 20 mei 2020 14:42]

. Drivers zitten in Linux in de kernel tree en vallen dus per definitie onder de GPL.
Nou weet ik vrij weinig van linux, maar zelfs bij mijn enkele experimenten met Mint werd al de optie aangeboden om 'proprietaire drivers' te downloaden voor de videokaart (en netwerk?).
Dus ik neem aan dat je best drivers gesloten kan houden, als je ze maar niet mee compileert maar als 'aparte installatie' aanbied. (Vinkje tijdens installatie van WSL?)
Dat klopt, deze drivers (waarschijnlijk de GPU drivers van Nvidia en netwerk drivers van Broadcom) worden geïnstalleerd via DKMS. Ik zeg dat al elders in deze discussie, het kan wel maar het is een nachtmerrie om te onderhouden.
Niet alleen dat, Nvidia heeft meer vage constructies. Zo kun je maximaal vier schermen aansturen per X sessie vanwege beperkingen in hun driver (ook al heb je zes grafische kaarten). Ook is combineren van oude en nieuwe kaarten lastig aangezien support moet overlappen qua softwareversie.

Ik neem de kutheid van het bedrijf mee in welke grafische kaart ik mensen aanraad. AMD heeft bij iedere nieuwe release driverissues maar ze zijn in ieder geval geen Nvidia.
Ik heb nu nog een NVidia kaart, maar wanneer deze aan vervanging toe is wordt het zeker een AMD. NVidia werkt bij mij prima, zelfs op mijn zakelijke laptop, maar het is toch niet zo goed geintergreerd als AMD. Als ik toch 400.- ophoest voor een kaart, dan ook liever 1 die het gewoon doet vanaf een USB-stick.
Ik kan me dit wel voorstellen. Nvidia is erg prima als het werkt, en meestal werkt het ook wel met de proprietary drivers. Maar er blijven altijd toch een paar dingen die niet lekker werken. Wayland, soms doen de drivers moeilijk met custom kernels, en zo nog wel een aantal dingen. En AMD is daar toch wat makkelijker in.
Naar mijn indruk had 3dmaster het over dit specifieke geval: ze doen iets waar alleen zijzelf profijt van hebben, en ze verwachten/hopen dat de linux-gemeenschap daarin meewerkt. En wat dat betreft is het dus nemen en niet geven. En dus wordt het bijna zeker nee.
Het is wel veel meer dan dat. Ga maar eens de commits nalopen.
Linux is wel GNU GPLv2, niet GPLv3: https://en.wikipedia.org/wiki/GNU_General_Public_License. Niet zeker of verschil tussen deze 2 hier zo relevant is.
Volgens http://techrights.org/wiki/index.php/Linux_Foundation heef MS veel macht over The Linux Foundation. Als dit min of meer correct is: ik ben benieuwd hoeveel druk er van deze hoek kan komen.

[Reactie gewijzigd door bdraw op 20 mei 2020 13:23]

Als dit min of meer correct is: ik ben benieuwd hoeveel druk er van deze hoek kan komen
Ik denk nul druk. De kernel-ontwikkelaars zijn onafhankelijk genoeg, en hebben volgens mij de linux foundation niet echt nodig. Sommigen worden er wel door betaald, maar die vinden ongetwijfeld snel een andere werkgever als ze (een het extreme geval) de banden met de linux foundation zouden verbreken vanwege ongewenste druk. En er zou een publicitaire rel ontstaan, die de linux-foundation leden, zoals micorsoft, eerder zou schaden.
Ik hoop het. Die van Techrights zijn wss ook niet te objectief wanneer het Microsoft betreft. Ik vertrouw Microsoft niet teveel (het blijft een bedrijf dat geld moet verdienen, met iets teveel macht), maar de developers die er werken zullen ook wel met de tijd mee zijn zeker. Voor hen zal open source etc ook wel aangenamer zijn om mee te werken. Oa hun interesse in gebruik van Rust programmeertaal vind ik goed.
Klinkt in mijn oren als aluhoedjes denken. Op deze manier kun je de duitsers ook nog blijven wantrouwen vanwege het Nazi verleden. Want je weet het maar nooit.

En als we toch met aluhoedjes opdoen bezig zijn, wie zegt mij dat de bepaalde personen in de Linux community niet door AWS worden betaald om Microsoft constant in een slecht daglicht te stellen?

Weet je wat een feit is: MS heeft Linux nodig om veel geld te verdienen aan Azure. Dat is de reden waarom ze zo zwaar inzetten op Linux.

[Reactie gewijzigd door Relief2009 op 20 mei 2020 13:49]

Ik zou 13 jaar na de oorlog idd nog niet de tegenstander vertrouwen. Track record zegt wel degelijk iets over een bedrijf. Gezien het vrij recente verleden van MS is voorzichtigheid geboden.
Het klopt wat je zegt over het verleden.
Toen vond Ballmer dat MS het allemaal anders moest doen, en is daarom ook zelf gestopt.
Veel mensen zijn daar idd wantrouwend over, maar veel mensen hebben daar ook vertrouwen in.
In plaats van gevoelens, kan je je ook laten leiden door technische/legale implicaties en regels.
Maak je je zorgen over submarine patenten, kan je bijvoorbeeld dit lezen en je afvragen of dat nog een probleem zal zijn.
edit: de 1e reactie van Eonfge hierboven legt het completer en beter uit.

[Reactie gewijzigd door PommeFritz op 20 mei 2020 12:05]

Maar de reactie vanuit de community vind ik typisch een gevalletje van: "een dropje aanbieden en zeuren dat het geen zuurtje is..."
Het is meer als het aanbieden van een shotje heroine. Logisch dat mensen daarover klagen. Óók als het 'gratis' is. Als ze dit goedvinden, dan is het hek van de dam, en dan gaan héél véél bedrijven onder dezelfde voorwaarden ook kernel-code uitbrengen. Waardoor de kernel voor de gemeenschap niet meer te onderhouden is (want: niet te testen). En het hele principe van een open-source kernel wordt dan op termijn van binnenuit uitgehold. Om nog niet te spreken van de mogelijkheid dan de kernel-licentie als gevolg daarvan in een rechtszaak deels onderuit gehaald wordt.

De Linux-community heeft een licentie gekozen, en heeft daar goede redenen voor. Microsoft dient zich aan die licentie te houden. Ze kunnen niet op hun eigen voorwaarden gaan profiteren van het werk van anderen. Als anderen van het werk van Microsoft willen profiteren, zonder dat daar iets tegenover staat, dan vindt Microsoft dat ook niet goed.
Dat is waar... Van Ballmer naar Nadella was een enorme verandering maar dat kan ook weer andersom gebeuren.

Nou is Ballmer daar ook niet echt neergezet vanuit zijn leiderschapskwaliteiten maar meer omdat hij altijd al de rechterhand van Bill Gates was. Ik denk dat na de problemen rondom hem ("Linux is a cancer", stoelengooien, vele mislukte produkten zoals WinPhone, Zune enz) de directie van Microsoft wel voorzichtiger is :) ). Nadella vond ik een heel goede keuze van ze.

[Reactie gewijzigd door GekkePrutser op 20 mei 2020 16:27]

Het is waar dat de houding t.o.v. opensource en Linux daartegen veranderd is sinds er eindelijk 'betere' mensen aan het roer staan bij MS, maar als je puur naar de Linux-kernel bijdragen kijkt dan zitten deze vooral aan de HyperV kant.

Er worden nu wel mondjesmaat andere bijdrages gedaan door MS zoals hun FAT-driver, maar deze zat volgens de kernel-devers nou niet echt lekker in elkaar en zijn ze dus naar een alternatief overgestapt van Samsung. Op gebied van Samba (SMB) doen ze naar mijn weten vrij weinig en is het allemaal reverse engineering.

Ik wil niet zeggen dat MS niets doet voor Linux, volgens mij doen ze ook financieel een bijdrage leveren aan de LF en hebben ze genoeg open-source spul (VSCode is echt top op Linux), maar er zijn bedrijven die toch wel meer bijdragen aan de Linux-kernel.
Welke 'embrace' bedoel je? Die van de jaren '90, die van het begin van deze eeuw?
Volgens mij zijn ze nu bezig met de 'embrace' van windows 10 c.q. wsl.
Het ligt er natuurlijk ook maar aan voor wie de applicatie bedoeld is. Een server applicatie wordt steeds minder gebouwd op Windows en eerder in een container gestopt.

Ik denk dat iedere organisatie tegenwoordig wel snapt dat enkel een Win32 applicatie gewoon niet meer OK is en zich meer richten op web apps (server applicaties).
Het ligt er natuurlijk wel aan of je bedoelt ontwikkelen op een computer met Linux als OS of software ontwikkelen dat op een Linux server gaat draaien. Dat laatste is namelijk de standaard geworden bij alle grote bedrijven. Vandaar Azure ook zo inzet op Linux ondersteuning, het is de grote markt.
Ik heb 'het' ook in quotes gezet. Persoonlijk gebruik ik voornamelijk Windows.
Maar het neemt niet weg dat heel veel mensen er wel zo over denken.
Ik zou Linux gebruiken als de VPN infra en remote desktop technologie van de meeste bedrijven niet opgeknoopt is aan Windows. Dus nu maar Windows met Cygwin en een VM met Linux. Dit ook omdat de Windows tooling grotendeels opgeknoopt is aan de GUI en dat werkt voor geen meter als je ontwikkelt en grote datasets hebt (nee, het past echt niet in Excel). Commandline Windows is beter geworden (resizable console na 30 jaar) maar het blijft zwak.
Linux is het platform waarvoor de devs ontwikkelen. Dat ze dat op een Windows computer doen maakt niets uit, de software wordt straks gehost op een Linux bak in de cloud. De hosting partij verdient zijn geld met het aanbieden van virtuele Linux servers en niet virtuele Windows servers.


Om te kunnen reageren moet je ingelogd zijn


Apple iPhone SE (2020) Microsoft Xbox Series X LG CX Google Pixel 4a CES 2020 Samsung Galaxy S20 4G Sony PlayStation 5 Nintendo Switch Lite

'14 '15 '16 '17 2018

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2020 Hosting door True