微軟在周二發(fā)布了他們的"DXGKRNL"Linux內(nèi)核驅(qū)動(dòng)的第三次迭代,主要用于實(shí)現(xiàn)DirectX/Hyper-V計(jì)算支持,特別是在Windows Subsystem for Linux/Windows Subsystem for Android中使用。
這個(gè)內(nèi)核驅(qū)動(dòng)是 微軟 在WSL中的GPU加速工作的一部分,自從最初在2020年發(fā)布以來,一直受到上游Linux內(nèi)核開發(fā)者的抵制。
早在一月份,微軟發(fā)布了一個(gè)重新設(shè)計(jì)的DXGKRNL驅(qū)動(dòng),用于支持WSL/WSA的Hyper-V計(jì)算設(shè)備,并允許OpenGL、OpenCL、Vulkan、OpenVINO、oneAPI和CUDA等進(jìn)行加速。除了內(nèi)核補(bǔ)丁系列被"從頭開始重建"之外,為它可能被主流化打開了一點(diǎn)大門:至少完全開源的 英特爾 計(jì)算運(yùn)行時(shí)棧可以在DXGKRNL棧之上工作。區(qū)別在于最初只有閉源的用戶空間驅(qū)動(dòng)程序可用,而現(xiàn)在至少有一個(gè)"開源"的用戶空間驅(qū)動(dòng)程序可用,以解決成為主線包容障礙的問題,微軟也有開源的libdxg庫(kù)作為其計(jì)算設(shè)備抽象的接口。
本周推出的是DXGKRNL v3驅(qū)動(dòng)。這個(gè)驅(qū)動(dòng)現(xiàn)在有30個(gè)補(bǔ)丁(v2版有24個(gè)補(bǔ)丁),這個(gè)驅(qū)動(dòng)的新內(nèi)核代碼有16190行。
與前一輪補(bǔ)丁相比,v3補(bǔ)丁帶來了各種低級(jí)別的改進(jìn)。然而,要讓這些代碼被接受到主線內(nèi)核中去,仍然是一個(gè)艱難的過程。著名的Linux內(nèi)核開發(fā)者Christoph Hellwig已經(jīng)對(duì)這一系列進(jìn)行了評(píng)論,認(rèn)為它并沒有解決什么實(shí)際問題。