So I want to find out which is my OpenGL version. I have access to Ubuntu via SSH. Which command shall I execute?
To Check OpenGL Version,
glxinfo | grep "OpenGL version"
You will get the output as follows,
glxinfo | grep "OpenGL version" OpenGL version string: 1.4 (2.1 Mesa 7.7.1)
You may have better luck with modern OpenGL just grepping for "version" instead of "OpenGL version" given the differences between the core and compat profiles, as well as the various GLSL and GLES versions:
glxinfo | grep 'version' server glx version string: 1.4 client glx version string: 1.4 GLX version: 1.4 Max core profile version: 4.1 Max compat profile version: 3.0 Max GLES1 profile version: 1.1 Max GLES profile version: 3.0 OpenGL core profile version string: 4.1 (Core Profile) Mesa 11.1.2 OpenGL core profile shading language version string: 4.10 OpenGL version string: 3.0 Mesa 11.1.2 OpenGL shading language version string: 1.30 OpenGL ES profile version string: OpenGL ES 3.0 Mesa 11.1.2 OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
Notice that the actual version is presented by the "core profile version" (4.1), whereas the "OpenGL version" is presented as 3.0.
depending on what you're looking for:
Open GL Implementation
You can use glxinfo, from the mesa-utils package:
sudo apt-get install mesa-utils glxinfo | grep "OpenGL version"
this depends a little,
dpkg -s [package name]
will tell you version information, etc. of any package.
but you'll need to know what specific part/implementation, etc. of opengl you're interested in. i suspect, for you, it'll be:
dpkg -s libglu1-mesa
Note: I've added this answer at a later date, because none of the existing answers address a crucial aspects regarding ssh, and will give misleading values to those who follow the above instructions.
Use X-forwarding when ssh-ing. This is enabled with
$ ssh MYCOMP $ glxinfo Error: unable to open display
$ ssh -X MYCOMP $ glxinfo | grep -i opengl OpenGL vendor string: NVIDIA Corporation OpenGL renderer string: GeForce 8800 GT/PCIe/SSE2 OpenGL version string: 2.1.2 NVIDIA 310.44 OpenGL shading language version string: 1.20 NVIDIA via Cg compiler OpenGL extensions:
I should note here that this is both the wrong graphics card, and wrong version numbers. ('Wrong' in terms of what you would expect).
:0, to allow access to the graphic card's driver from the remote session.
$ ssh -X MYCOMP $ DISPLAY=:0 $ glxinfo | grep -i opengl OpenGL vendor string: NVIDIA Corporation OpenGL renderer string: GeForce GTX 550 Ti/PCIe/SSE2 OpenGL version string: 4.3.0 NVIDIA 310.14 OpenGL shading language version string: 4.30 NVIDIA via Cg compiler OpenGL extensions:
This lists the correct graphics card (the one on the remote computer), as well as the correct version numbers.
You can get the information by running following command:
DISPLAY=:0 glxgears -info | grep GL_VERSION
This echos something like:
GL_VERSION = 3.3.0 NVIDIA 340.93
Also try without
DISPLAY=:0 in case of problems. The command
glxgears is in
mesa-utils package which can be installed with:
sudo apt-get install mesa-utils
If you have root access to a remote computer running Ubuntu 16.04, you could run
user@local_computer:~$ ssh email@example.com root@remote:~# export DISPLAY=:0 root@remote:~# export XAUTHORITY=/var/lib/lightdm/.Xauthority root@remote:~# glxinfo | grep -i "OpenGL version" OpenGL version string: 3.0 Mesa 11.2.0