Ubuntu 在任何情况下都不会生效。一种方法是在启动后通过SSH连接简单地登录到机器,并作为myuser启动vncserver: /opt/TurboVNC/bin/vncserver :5 -display 24
或者,您可以探索在机器启动时自动运行应用程序的各种方法。这里有这么多可能的方法,最好只做一个与你的操作系统相关的谷歌搜索Ubuntu 在任何情况下都不会生效。一种方法是在启动后通过SSH连接简单地登录到机器,并作为myuser启动vncserver: /opt/TurboVNC/bin/vncserver :5 -display 24,ubuntu,cuda,x11,freeglut,nsight,Ubuntu,Cuda,X11,Freeglut,Nsight,或者,您可以探索在机器启动时自动运行应用程序的各种方法。这里有这么多可能的方法,最好只做一个与你的操作系统相关的谷歌搜索 如果您尚未这样做,则可能需要构建CUDA示例。上述步骤5中链接的入门指南文档介绍了该方法。您可能需要确保为某些CUDA图形示例(如simpleGL)安装了合适的glut提供程序,如freeglut 在关闭电源之前,您可能还需要修改远程工作站防火墙。出于我的目的,我刚刚禁用了它(系统…管理…防火墙…禁用)。TurboVNC使用默认情况下将被防火墙阻止的特定端口。如果您希望使用防
simpleGL
)安装了合适的glut提供程序,如freeglut192.168.1.104:5
连接后,系统将提示您输入上面步骤9中提供的密码。此时,与myuser
关联的图形桌面应该会在您的客户机上打开。此图形桌面还没有与之关联的完整3D图形加速。为了使用GPU for OpenGL(以及CUDA/OpenGL interop),有必要运行带有vglrun
的应用程序,如下所示:
vglrun -d :0 glxgears
您在此处指定的是:0
,因为这是与GPU图形加速相关联的实际X显示(对于登录的myuser
)。如果您构建了CUDA示例,您可以尝试CUDA/OpenGL互操作应用程序:
vglrun -d :0 /usr/local/cuda/samples/bin/x86_64/linux/release/simpleGL
在上述两个示例中,如果您在步骤10中使用vglserver_config配置了vglserver,那么您应该能够从vglrun命令中省略-d:0
开关:
vglrun glxgears
出于参考目的(仅限-您很可能无法一字不差地使用此xorg文件),下面是一个完整的xorg.conf
(无需对vglserver\u config
进行任何修改):
故障排除:
我不打算回答详细的故障排除问题,因为我无法测试每个配置。但是,如果您的客户机根本无法连接到远程工作站,则可能意味着vncserver没有正确启动,或者防火墙正在阻止操作。对于其他类型的故障排除,/var/log/Xorg.0.log
可能会提供一些线索。使用nvidia smi
确定CUDA驱动程序已正确安装。一般来说,无头操作很难排除故障,因此,如果您可以为初始设置和测试安排一个支持显示的CUDA GPU,可能会更容易。您可以稍后切换到非显示GPU
注:
*K20m和K20Xm需要使用nvidia smi
实用程序正确设置图形操作模式。K20c,仅用于计算。另外,大多数其他支持NVIDIA CUDA的GPU都可以用于此目的。但是,具有cc2.0之前计算能力的GPU不能与本文描述的CUDA 7驱动程序一起使用
作为附加参考,这将非常有用。您是否尝试了X11转发?我想无论如何都不行。普通X应用程序(具有适当的机器配置)可以使用X11转发远程运行,但CUDA/OpenGL互操作应用程序(如粒子样本)需要CUDA端和OpenGL堆栈之间的交互,而普通X11转发会话不支持这种交互。这可以使用远程处理实用程序的适当设置来管理(作为一个可能的示例),如TurboVNC和VirtualGL,但是设置有些复杂。TurboVNC/VirtualGL方法有些复杂,可能不是唯一的选择。如果这对您来说真的很重要,那么您可能需要尝试其他VNC风格的远程处理解决方案,例如NoMachine NX。(我对Unix系统相当陌生,所以可能会出错。)谢谢,我会试试NoMachine NX。
Option "UseDisplayDevice" "none"
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
/opt/TurboVNC/bin/vncserver :5 -depth 24
[daemon]
AutomaticLoginEnable=true
AutomaticLogin=myuser
/opt/TurboVNC/bin/vncserver :5 -display 24
192.168.1.104:5
vglrun -d :0 glxgears
vglrun -d :0 /usr/local/cuda/samples/bin/x86_64/linux/release/simpleGL
vglrun glxgears
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig: version 346.46 (buildmeister@swio-display-x86-rhel47-06) Tue Feb 17 19:10:20 PST 2015
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0"
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Files"
FontPath "/usr/share/fonts/default/Type1"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from data in "/etc/sysconfig/keyboard"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbLayout" "us"
Option "XkbModel" "pc105"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
HorizSync 28.0 - 52.0
VertRefresh 43.0 - 72.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BusID "PCI:1:0:0"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "UseDisplayDevice" "none"
SubSection "Display"
Depth 24
Modes "1024x768"
EndSubSection
EndSection