问题标签 [osmesa]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
317 浏览

headless - 如何正确编译 ParaView 以进行无头屏幕外渲染?

我在远程服务器上运行 OpenFOAM,并且基本上设法通过 paraview 将结果可视化,pvserver 如此处所述。但是,在连接后,客户端会产生

服务器显示无法访问!

在服务器端无法访问显示。远程渲染将被禁用。

这基本上是正确的,因为服务器不运行 X 服务器。性能当然不是最理想的,因为没有远程渲染整个几何图形都会被传输(我想这几乎和直接 ssh 复制文件以纯粹在本地运行一样糟糕)。服务器确实有一个简单的板载 GPU(c2:00.0 VGA 兼容控制器:ASPEED Technology, Inc. ASPEED Graphics Family (rev 41) as per lspci),使用它可能被称为 B 计划,因为在某些时候我可能会切换到没有GPU 或完全不同的 GPU。因此,相反,我查看了https://kitware.github.io/paraview-docs/latest/cxx/Offscreen.html,并使用 Arch Linux 获得了它的 paraviewPKGBUILD并在其指令asp checkout paraview中附加了以下开关:build() -> cmake

编译没有错误(尽管有很多警告,我可能必须检查它们是否在有和没有这些开关的情况下有所不同),但pvserver现在 SEGFAULTs:

LD_PRELOADing 现有libGLEW.so的建议例如这里没有改变事情所以现在我被卡住了....../usr/lib/libosmesa.so也存在,原样libOpenGL.so,所以我错过了什么?如何正确解决此问题?

0 投票
1 回答
258 浏览

docker - 如何在 selenium-docker 项目中的 Headless Chrome >= 96 中启用 WebGL,以便在没有 XVFB 的 docker 容器中运行 Chrome

我正在使用 selenium-docker 项目在 docker 容器中运行 chrome,没有XVFBSTART_XVFB=false)。

我想使用 webgl 支持。使用 chrome v95 及更低版本 ( https://github.com/SeleniumHQ/docker-selenium/releases/tag/4.1.0-prerelease-20211105 ),启用 webgl (检查https://get.webgl.org/ ) .

但是,当使用 chrome v96 或更高版本时,它不起作用(https://github.com/SeleniumHQ/docker-selenium/releases/tag/4.1.2-20220131)。我可以看到gpu 进程--use-gl=disabled参数,这不会发生在 chrome v95 上。

我尝试将参数传递给 chrome,但它们不起作用。我相信硒图像与这种行为无关,它在 chrome v96 中发生了变化。

启用XVFB对我来说不是一个选项,性能不一样。

如何避免将此--use-gl=disabled参数传递给 chrome gpu 进程?

这是带有 chrome 94 的 ps 输出,这里选择了 swiftshader: