只是想知道是否有办法将 optirun 与桌面环境一起使用。
有人知道它是否有效吗?
编辑:
我读了很多关于 bumblebee 的文章,但仍然没有找到任何关于你的桌面环境是否默认使用 optirun(使用 GPU)运行的信息。或者它是否有效。
我确实经常回到那里尝试弄清楚,但到目前为止还没有成功。
注意:bumblebee 在我的计算机上运行良好(Ubuntu 12.04,NVIDIA GT 650M GDDR3 2GB 显卡)
答案1
Bumblebee 有两个组件:
- 电源管理 (PM)
- 让你使用专用 GPU
当 Bumblebee 认为您不需要专用 GPU 时,PM 组件会让 Nvidia 卡处于 D3 状态以节省电量。
第二个组件(您询问的组件)是通过启动绑定到 Nvidia 卡的 X 服务器来完成的。每个想要在 Nvidia 卡上渲染某些内容的客户端都需要此 X 服务器进行渲染。由于此服务器是无头的,因此在将其绘制到显示器之前您看不到任何内容。您在 Intel GPU 上运行的桌面用于显示渲染的帧。为了将帧从渲染 X 服务器传输到显示 X 服务器,需要 VirtualGL 或 primus 等桥接器。
ASCII 艺术展示了使用 primus 和 virtualgl 作为传输方式运行时三个不同应用程序的架构:
| rendering X server (Nvidia) |
\================++=============++/
|| || ||
VirtualGL-\ /--primus /-primus
|| \ / || | ||
|glxgears| || |glxgears| | |java|
|| |
/========++================+======\
| displaying X server (Intel) |
因此,您无法使用optirun startx
或其他东西在 Nvidia 卡上绘制完整桌面。请记住,Nvidia GPU 是无头的,在 Nvidia 卡上渲染某些内容,然后将其传输回去在同一个无头 GPU 上显示是毫无用处的。如果您有外接显示器,则可能(因硬件而异)在该屏幕上渲染/显示所有内容(请参阅大黄蜂 维基)。
您也可能对。。。有兴趣http://wiki.bumblebee-project.org/FAQ