Created
November 20, 2019 01:28
-
-
Save thomelane/ff5b6987366228749110f6bdf7b71152 to your computer and use it in GitHub Desktop.
GLX Commands
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# On local MacOS machine... | |
1) Download and Install TurboVCN | |
Only source for binaries was sourceforge: https://sourceforge.net/projects/turbovnc/files/2.1.2/ | |
`TurboVNC-2.1.2.dmg` failed to run on MacOS Siera, but `TurboVNC-2.1.2-AppleJava.dmg` was sucessful. | |
Only after installing an old version of Java: https://support.apple.com/kb/DL1572?locale=en_GB | |
2) Start AWS p3.2xlarge instance | |
3) Add to ~/.ssh/config | |
``` | |
Host glx.com | |
HostName [instance-ip].amazonaws.com | |
User ubuntu | |
IdentityFile ~/.ssh/[keypair].pem | |
LocalForward 5901 localhost:5901 | |
``` | |
4) SSH onto instance with `ssh glx.com` | |
# On remote AWS EC2 instance... | |
1) Get GLX test utils | |
``` | |
sudo apt-get update | |
sudo apt-get install -y mesa-utils | |
glxinfo | |
glxgears | |
``` | |
2) Download NVIDIA drivers, for LibGL | |
``` | |
wget http://us.download.nvidia.com/tesla/396.44/nvidia-diag-driver-local-repo-ubuntu1604-396.44_1.0-1_amd64.deb | |
sudo dpkg -i nvidia-diag-driver-local-repo-ubuntu1604-396.44_1.0-1_amd64.deb | |
sudo apt-key add /var/nvidia-diag-driver-local-repo-396.44/7fa2af80.pub | |
sudo apt-get install cuda-drivers | |
sudo reboot | |
``` | |
3) Add NVidia LibGL to path | |
* Find Location of NVidia `libGL.so`: sudo find / -name 'libGL.so' | |
* Add NVidia libs path (via `.bashrc`): `export LD_LIBRARY_PATH=/usr/lib/nvidia-396/:$LD_LIBRARY_PATH` | |
* `source .bashrc` | |
4) Confirm NVidia LibGL is used | |
``` | |
ldd `which glxgears` | |
``` | |
And look for something like: `libGL.so.1 => /usr/lib/nvidia-396/libGL.so.1 (0x00007f336ff83000)` | |
### LOG HISTORY | |
# Get CUDA version | |
16 nvcc --version | |
# Get GLX test | |
109 sudo apt-get update | |
29 sudo apt-get install -y mesa-utils | |
30 glxinfo | |
glxgears | |
# Install xserver | |
49 sudo apt-get -y install xserver-xorg | |
# Install mesa drivers (as backup) | |
sudo apt-get install -y libglu1-mesa-dev freeglut3-dev mesa-common-dev libxmu-dev libxi-dev | |
# Find BUS of NVIDIA | |
69 lspci | |
79 nvidia-xconfig --query-gpu-info | |
# Create config | |
80 sudo nvidia-xconfig --busid=PCI:0:30:0 --use-display-device=none | |
50 sudo nvidia-xconfig -a --use-display-device=None --virtual=1280x1024 | |
# Adjust config | |
sudo nano /etc/X11/xorg.conf | |
Comment out the server layout, and screen blocks | |
# Start x server | |
51 sudo /usr/bin/X :0 & | |
# Find location on nvidia driver libs | |
111 sudo find / -name 'libGL.so' | |
# Add to path | |
112 export LD_LIBRARY_PATH=/usr/lib/nvidia-396/:$LD_LIBRARY_PATH | |
# Check glx is using correct lib | |
90 ldd `which glxgears` | |
# Install virtualgl | |
171 wget https://sourceforge.net/projects/virtualgl/files/2.5.2/virtualgl_2.5.2_amd64.deb/download -O virtualgl_2.5.2_amd64.deb | |
172 sudo dpkg -i virtualgl*.deb | |
173 rm virtualgl*.deb | |
# Install turboVCN | |
174 wget https://sourceforge.net/projects/turbovnc/files/2.1.1/turbovnc_2.1.1_amd64.deb/download -O turbovnc_2.1.1_amd64.deb | |
175 sudo dpkg -i turbovnc*.deb | |
176 rm turbovnc*.deb | |
# Unsorted | |
177 sudo service lightdm stop | |
178 sudo /opt/VirtualGL/bin/vglserver_config -config +s +f -t | |
179 sudo reboot | |
180 export LD_LIBRARY_PATH=/usr/lib/nvidia-396/:$LD_LIBRARY_PATH | |
181 glxgears | |
182 xauth merge /etc/opt/VirtualGL/vgl_xauth_key | |
183 xdpyinfo -display :0 | |
184 /opt/VirtualGL/bin/glxinfo -display :0 -c | |
185 exit | |
186 export LD_LIBRARY_PATH=/usr/lib/nvidia-396/:$LD_LIBRARY_PATH | |
187 ldd `which glxgears` | |
188 /opt/TurboVNC/bin/vncserver | |
189 export DISPLAY=:1 | |
190 DISPLAY=1 vglrun glxgears | |
191 ls | |
192 source activate coach_env | |
193 coach -l | |
194 vglrun coach -r -p CartPole_PG | |
195 /opt/TurboVNC/bin/vncserver | |
196 vglrun glxgears | |
197 DISPLAY:=1 vglrun glxgears | |
198 DISPLAY=1 vglrun glxgears |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment