# EGL rendering stays at 0% GPU use in ParaView 6.0.0/6.0.1 under Docker+WSL2, even though CUDA/VisRTX works fine in the same process

**URL:** https://discourse.paraview.org/t/egl-rendering-stays-at-0-gpu-use-in-paraview-6-0-0-6-0-1-under-docker-wsl2-even-though-cuda-visrtx-works-fine-in-the-same-process/17669
**Category:** ParaView Support
**Created:** [August 3, 2026, 2:11pm UTC](https://discourse.paraview.org/t/egl-rendering-stays-at-0-gpu-use-in-paraview-6-0-0-6-0-1-under-docker-wsl2-even-though-cuda-visrtx-works-fine-in-the-same-process/17669 "2026-08-03T14:11:13Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![josebastiase](https://discourse.paraview.org/user_avatar/discourse.paraview.org/josebastiase/32/17787_2.png) [@josebastiase](https://discourse.paraview.org/u/josebastiase)
#### Post date: [August 3, 2026, 2:11pm UTC](https://discourse.paraview.org/t/egl-rendering-stays-at-0-gpu-use-in-paraview-6-0-0-6-0-1-under-docker-wsl2-even-though-cuda-visrtx-works-fine-in-the-same-process/17669/1 "2026-08-03T14:11:13Z")

</div>

**Setup:** Windows 11 + WSL2, RTX 4060 Laptop GPU, driver 581.32/CUDA 13.0. Docker (native in WSL2, not Desktop) + NVIDIA Container Toolkit 1.19.1, `--gpus all`. ParaView 6.0.0 official Linux binary, confirmed via `pvpython --version`. EGL vendor ICD already set up (`/usr/share/glvnd/egl_vendor.d/10_nvidia.json` → `libEGL_nvidia.so.0`).

**What works:** `nvidia-smi` inside the container, `nvidia/cuda` test containers, and VisRTX — which correctly logs `VisRTX 0.1.6, using devices: 0: NVIDIA GeForce RTX 4060 Laptop GPU` at startup, in the same process.

**What doesn’t:** A plain `pv_simple.CreateView("RenderView")` + `SetOffScreenRendering(1)` (library import, not `pvpython` CLI) defaults to attempting GLX (`vtkXOpenGLRenderWindow ... bad X server connection`). Forcing `VTK_DEFAULT_OPENGL_WINDOW=vtkEGLRenderWindow` removes that warning, but `nvidia-smi` stays flat at 0% GPU-util/0MiB/no processes throughout, even while actively rotating a loaded mesh — tested across several env-var combos with the same result.

**Already checked:** This looked like the bug fixed in [this thread](https://discourse.paraview.org/t/hardware-accelerated-headless-rendering-in-version-6-0/16685) (`VTK_USE_X=OFF` letting OSMesa clobber EGL in the CMake factory override), but I diffed `Rendering/OpenGL2/CMakeLists.txt` at the exact VTK commits pinned by ParaView 6.0.0 and 6.0.1 — the fix is already present in both, so it’s not a recurrence of that one. Also confirmed no `d3d12_dri.so` in the image, ruling out the WSLg/Mesa-D3D12 path as an alternative.

**Question:** Given the CMake-level fix is already in, is there a known reason `vtkEGLRenderWindow` init would still silently fail specifically under WSL2 GPU virtualization vs. native Linux? Is there a way to get non-silent diagnostics from the EGL init path? Happy to run whatever’s useful.
