You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
n WSL2, when using EGL for headless rendering, I encounter the error chmod: cannot access '/dev/dri/renderD128': No such file or directory, and after changing permissions, I get the following warnings:
CUDA_VISIBLE_DEVICES: 0
libEGL warning: MESA-LOADER: failed to open vgem: /usr/lib/dri/vgem_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libEGL warning: NEEDS EXTENSION: falling back to kms_swrast
libEGL warning: MESA-LOADER: failed to open kms_swrast: /usr/lib/dri/kms_swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
It seems to be because WSL2 uses the D3D12 virtual rendering, and I want to know if it is possible to use a new driver in WSL2 that can directly access the actual GPU.
Describe alternatives you've considered:
I am looking for a mechanism that can initialize the OpenGL context. Without using EGL, when trying to get the GPU ID, it directly throws an error indicating that the OpenGL context cannot be retrieved. I would like a mechanism that makes it easier to use my GPU in WSL2. Thank you.
Additional context:
My GPU does support hardware-accelerated tasks, and it seems that this error occurs when the hardware rendering option is enabled.
The text was updated successfully, but these errors were encountered:
In the WSL2 environment, EGL typically accesses GPU-accelerated resources through Mesa or other EGL implementations. If an EGL program currently accesses /dev/dri/renderD128, it uses the standard DRM (Direct Rendering Manager) interface in the Linux environment. This is different from the Direct3D 12 channel provided by /dev/dxg. Is it possible to provide an interface that allows EGL to access the WSLg virtual DXG?
Is your feature request related to a problem:
n WSL2, when using EGL for headless rendering, I encounter the error chmod: cannot access '/dev/dri/renderD128': No such file or directory, and after changing permissions, I get the following warnings:
CUDA_VISIBLE_DEVICES: 0
libEGL warning: MESA-LOADER: failed to open vgem: /usr/lib/dri/vgem_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libEGL warning: NEEDS EXTENSION: falling back to kms_swrast
libEGL warning: MESA-LOADER: failed to open kms_swrast: /usr/lib/dri/kms_swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
OpenGL.raw.EGL._errors.EGLError: EGLError(
err = EGL_NOT_INITIALIZED,
baseOperation = eglInitialize,
cArguments = (
<OpenGL._opaque.EGLDisplay_pointer object at 0x7fa4e04190c0>,
c_long(0),
c_long(0),
),
result = 0
)
Describe the solution you'd like:
It seems to be because WSL2 uses the D3D12 virtual rendering, and I want to know if it is possible to use a new driver in WSL2 that can directly access the actual GPU.
Describe alternatives you've considered:
I am looking for a mechanism that can initialize the OpenGL context. Without using EGL, when trying to get the GPU ID, it directly throws an error indicating that the OpenGL context cannot be retrieved. I would like a mechanism that makes it easier to use my GPU in WSL2. Thank you.
Additional context:
My GPU does support hardware-accelerated tasks, and it seems that this error occurs when the hardware rendering option is enabled.
The text was updated successfully, but these errors were encountered: