I experienced a problematic behavior with the 361.28 version of the nVidia driver under CentOS 6.7 running the most recent Matlab version R2016a. Directly after initialization Matlab crashes giving an error message:
###############################################################################
MATLAB crash file:/home/xxxxxx/matlab_crash_dump.5931-1:
------------------------------------------------------------------------
Segmentation violation detected at Wed Mar 16 15:21:57 2016
------------------------------------------------------------------------
Configuration:
Crash Decoding : Disabled
Crash Mode : continue (default)
Current Graphics Driver: Unknown hardware
Current Visual : 0x21 (class 4, depth 24)
Default Encoding : UTF-8
GNU C Library : 2.12 stable
Host Name : monkey.xxx.xx.xxx.xx
MATLAB Architecture : glnxa64
MATLAB Root : /software/Matlab.R2016a
MATLAB Version : 9.0.0.341360 (R2016a)
OpenGL : hardware
Operating System : Linux 2.6.32-573.18.1.el6.x86_64 #1 SMP Tue Feb 9 22:46:17 UTC 2016 x86_64
Processor ID : x86 Family 6 Model 45 Stepping 7, GenuineIntel
Virtual Machine : Java 1.7.0_60-b19 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode
Window System : CentOS (11500000), display :0.0
Fault Count: 1
Abnormal termination:
Segmentation violation
Register State (from fault):
RAX = 00007fdeddc8fcf0 RBX = 0000000000000000
RCX = 0000000000000001 RDX = 0000000000000000
RSP = 00007fdeddc8fcc0 RBP = 00007fdec840b680
RSI = 0000000000000000 RDI = 00007fdeddc8fd98
R8 = 00000000000000a8 R9 = 00000038b388405a
R10 = 0000000000000000 R11 = 00000038b3883dda
R12 = 00007fdec8787680 R13 = 00007fdec840b680
R14 = 00007fdec880aed0 R15 = 00007fdec89481c0
RIP = 00000037ab65420d EFL = 0000000000010202
CS = 0033 FS = 0000 GS = 0000
Stack Trace (from fault):
[ 0] 0x00000037ab65420d /usr/lib64/nvidia/libGL.so.1+00344589
If this problem is reproducible, please submit a Service Request via:
http://www.mathworks.com/support/contact_us/ [^]
A technical support engineer might contact you with further information.
Thank you for your help.
###############################################################################
As I use by standard the kmod-nvidia driver from the ElRepo repository, I needed to track down whether the problem is due to the driver itself or the packaging from ElRepo. Therefore, I removed the kmod-nvidia version and installed the Linux driver supplied by nVidia. The same error behavior was found:
################################################################
MATLAB crash file:/home/xxxxxx/matlab_crash_dump.3983-1:
------------------------------------------------------------------------
Segmentation violation detected at Wed Mar 23 11:13:47 2016
------------------------------------------------------------------------
Configuration:
Crash Decoding : Disabled
Crash Mode : continue (default)
Current Graphics Driver: Unknown hardware
Current Visual : 0x21 (class 4, depth 24)
Default Encoding : UTF-8
GNU C Library : 2.12 stable
Host Name : monkey.xxx.xx.xxx.xx
MATLAB Architecture : glnxa64
MATLAB Root : /software/Matlab.R2016a
MATLAB Version : 9.0.0.341360 (R2016a)
OpenGL : hardware
Operating System : Linux 2.6.32-573.18.1.el6.x86_64 #1 SMP Tue Feb 9 22:46:17 UTC 2016 x86_64
Processor ID : x86 Family 6 Model 45 Stepping 7, GenuineIntel
Virtual Machine : Java 1.7.0_60-b19 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode
Window System : CentOS (11500000), display :0.0
Fault Count: 1
Abnormal termination:
Segmentation violation
Register State (from fault):
RAX = 00007f8de9c37e70 RBX = 0000000000000000
RCX = 0000000000000001 RDX = 0000000000000000
RSP = 00007f8de9c37e40 RBP = 00007f8ddc0524d0
RSI = 0000000000000000 RDI = 00007f8de9c37f18
R8 = 00000000000000a8 R9 = 00000038b388405a
R10 = 0000000000000000 R11 = 00000038b3883dda
R12 = 00007f8ddc0405d0 R13 = 00007f8ddc0524d0
R14 = 00007f8ddc397f30 R15 = 00007f8ddc353410
RIP = 00007f8ee4bde20d EFL = 0000000000010206
CS = 0033 FS = 0000 GS = 0000
Stack Trace (from fault):
[ 0] 0x00007f8ee4bde20d /usr/lib64/libGL.so.1+00344589
If this problem is reproducible, please submit a Service Request via:
http://www.mathworks.com/support/contact_us/ [^]
A technical support engineer might contact you with further information.
Thank you for your help.
#######################################################################
This problem occurs only with Matlab R2016a, with the second-latest version R2015b this error does not occur. However, for me it is not possible to determine if the problem comes through the driver or Matlab. As with the 361.xx drivers a choice between GLVND or non-GLVND was made possible, a possible error could be there.
With the prior driver version 352.79 all Matlab version run correctly and no problem occurs.
I attached the nvidia-bug-report.log.gz file which I created after the Matlab crash. nvidia-bug-report.log.gz (132 KB)
I can confirm that (direct install of the Linux driver supplied by nVidia, openSUSE 13.2).
With the latest beta driver (364.12) Matlab R2016a seems to work again, but I get this exception shortly after startup:
com.jogamp.opengl.GLException: X11GLXDrawableFactory - Could not initialize shared resources for X11GraphicsDevice[type .x11, connection :0, unitID 0, handle 0x0, owner false, ResourceToolkitLock[obj 0x7a00792d, isOwner false, <3513b7ee, 2190857b>[count 0, qsz 0, owner <NULL>]]]
at jogamp.opengl.x11.glx.X11GLXDrawableFactory$SharedResourceImplementation.createSharedResource(X11GLXDrawableFactory.java:326)
at jogamp.opengl.SharedResourceRunner.run(SharedResourceRunner.java:297)
at java.lang.Thread.run(Unknown Source)
Caused by: com.jogamp.opengl.GLException: glXGetConfig(0x1) failed: error code GLX_BAD_SCREEN
at jogamp.opengl.x11.glx.X11GLXGraphicsConfiguration.glXGetConfig(X11GLXGraphicsConfiguration.java:570)
at jogamp.opengl.x11.glx.X11GLXGraphicsConfiguration.XVisualInfo2GLCapabilities(X11GLXGraphicsConfiguration.java:500)
at jogamp.opengl.x11.glx.X11GLXGraphicsConfigurationFactory.chooseGraphicsConfigurationXVisual(X11GLXGraphicsConfigurationFactory.java:434)
at jogamp.opengl.x11.glx.X11GLXGraphicsConfigurationFactory.chooseGraphicsConfigurationStatic(X11GLXGraphicsConfigurationFactory.java:240)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory.createMutableSurfaceImpl(X11GLXDrawableFactory.java:524)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory.createDummySurfaceImpl(X11GLXDrawableFactory.java:535)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory$SharedResourceImplementation.createSharedResource(X11GLXDrawableFactory.java:283)
... 2 more
I can confirm the error that dliw is getting. I also see this exact error with matlab 2016, and I am also using the 364.12 driver on linux mint 17.3.
In matlab if you call >> opengl info
you get a low level graphics error. From the error log:
com.jogamp.opengl.GLException: Profile GL_DEFAULT is not available on X11GraphicsDevice[type .x11, connection :0, unitID 0, handle 0x0, owner false, ResourceToolkitLock[obj 0x2b83ed6, isOwner false, <e2554ff, 34ef389a>[count 0, qsz 0, owner ]]], but:
at com.jogamp.opengl.GLProfile.get(GLProfile.java:990)
at com.jogamp.opengl.GLProfile.getDefault(GLProfile.java:721)
at com.jogamp.opengl.GLCapabilities.(GLCapabilities.java:84)
at com.mathworks.hg.uij.OpenGLUtils$MyGLListener.getGLInformation(OpenGLUtils.java:320)
at com.mathworks.hg.uij.OpenGLUtils$MyGLListener.getGLData(OpenGLUtils.java:498)
at com.mathworks.hg.uij.OpenGLUtils.getGLData(OpenGLUtils.java:78)
Matlab claims to be talking with Nvidia about this error. Will Nvidia be fixing this?
As I was recommended from the MathWorks support, you can temporarily solve the problem by running matlab with the -softwareopengl flag, without having to downgrade your graphic card driver.
For those needing help, you can simply edit your/create the /usr/share/applications/matlab.desktop file as follows:
Could this be fixed in the nvidia-361 driver for the next release? Matlab support told me this is possible an error with the NVidia driver. I would like to use the Optimus technique, I guess the open-source 364 version doesn’t support the Optimus tech.
I have tried the desktop shortcut file, by setting +x mode, it works. Thanks!
On the same issue, working on a Lenovo ThinkPad W530 with Fedora 23 and a nvidia Quadro K2000M, I upgraded nvidia driver to 367.27 version (last one) and the problem was solved
After a first test the problem seems to be solved with Driver Version 367.27 under CentOS 6, too.
Edit: Unfortunately the problem is only solved in respect that it is possible to start Matlab. However, when opening a number of figure windows or when closing a lot of figure windows using ‘close all’, Matlab16a still tends to crash. This is true for both 367.27 and 367.35. Still, this problem does not occur on earlier Matlab versions (I tested Matlab15b).
I can also verify this bug on my linux desktop running Linux Mint 17.3. Matlab 2016 gives an opengl exception at startup. Also the command opengl info generates a low level graphics error.
This problem occurs even when using Nvidia 367 and 370 drivers. Matlab claims it’s an Nvidia bug and will do nothing to rectify it even though Matlab 2015 works just fine.
I’m curious if there is any hope for a fix or if Nvidia is aware of this problem. I assume they are since the Matlab rep. claimed they had spoken with Nvidia about it.
com.jogamp.opengl.GLException: X11GLXDrawableFactory - Could not initialize shared resources for X11GraphicsDevice[type .x11, connection :0, unitID 0, handle 0x0, owner false, ResourceToolkitLock[obj 0x647be1fc, isOwner false, <1319aee, 5fb27fde>[count 0, qsz 0, owner <NULL>]]]
at jogamp.opengl.x11.glx.X11GLXDrawableFactory$SharedResourceImplementation.createSharedResource(X11GLXDrawableFactory.java:326)
at jogamp.opengl.SharedResourceRunner.run(SharedResourceRunner.java:297)
at java.lang.Thread.run(Unknown Source)
Caused by: com.jogamp.opengl.GLException: glXGetConfig(0x1) failed: error code Unknown error code 6
at jogamp.opengl.x11.glx.X11GLXGraphicsConfiguration.glXGetConfig(X11GLXGraphicsConfiguration.java:570)
at jogamp.opengl.x11.glx.X11GLXGraphicsConfiguration.XVisualInfo2GLCapabilities(X11GLXGraphicsConfiguration.java:500)
at jogamp.opengl.x11.glx.X11GLXGraphicsConfigurationFactory.chooseGraphicsConfigurationXVisual(X11GLXGraphicsConfigurationFactory.java:434)
at jogamp.opengl.x11.glx.X11GLXGraphicsConfigurationFactory.chooseGraphicsConfigurationStatic(X11GLXGraphicsConfigurationFactory.java:240)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory.createMutableSurfaceImpl(X11GLXDrawableFactory.java:524)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory.createDummySurfaceImpl(X11GLXDrawableFactory.java:535)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory$SharedResourceImplementation.createSharedResource(X11GLXDrawableFactory.java:283)
I have the same problem as described by SevenThunders in previous post. I’m using Linux Mint Debian Edition with GTX 1070 and currently have 367.44 drivers, I’ve tried 352.79 and 370.23 (beta) drivers as well but the problem persists.
currently I’m running matlab with -softwareopengl flag.
startup error
com.jogamp.opengl.GLException: X11GLXDrawableFactory - Could not initialize shared resources for X11GraphicsDevice[type .x11, connection :0, unitID 0, handle 0x0, owner false, ResourceToolkitLock[obj 0x7f83d89a, isOwner false, <2901a7dd, 2bb3b333>[count 0, qsz 0, owner <NULL>]]]
at jogamp.opengl.x11.glx.X11GLXDrawableFactory$SharedResourceImplementation.createSharedResource(X11GLXDrawableFactory.java:326)
at jogamp.opengl.SharedResourceRunner.run(SharedResourceRunner.java:297)
at java.lang.Thread.run(Unknown Source)
Caused by: com.jogamp.opengl.GLException: glXGetConfig(0x1) failed: error code Unknown error code 6
at jogamp.opengl.x11.glx.X11GLXGraphicsConfiguration.glXGetConfig(X11GLXGraphicsConfiguration.java:570)
at jogamp.opengl.x11.glx.X11GLXGraphicsConfiguration.XVisualInfo2GLCapabilities(X11GLXGraphicsConfiguration.java:500)
at jogamp.opengl.x11.glx.X11GLXGraphicsConfigurationFactory.chooseGraphicsConfigurationXVisual(X11GLXGraphicsConfigurationFactory.java:434)
at jogamp.opengl.x11.glx.X11GLXGraphicsConfigurationFactory.chooseGraphicsConfigurationStatic(X11GLXGraphicsConfigurationFactory.java:240)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory.createMutableSurfaceImpl(X11GLXDrawableFactory.java:524)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory.createDummySurfaceImpl(X11GLXDrawableFactory.java:535)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory$SharedResourceImplementation.createSharedResource(X11GLXDrawableFactory.java:283)
... 2 more
error after opengl info
MATLAB has experienced a low-level graphics error, and may not have drawn correctly.
Read about what you can do to prevent this issue at Resolving Low-Level Graphics Issues then restart MATLAB.
To share details of this issue with MathWorks technical support,
please include this file with your service request.
Version: ''
Vendor: ''
Renderer: 'None'
RendererDriverVersion: ''
RendererDriverReleaseDate: ''
MaxTextureSize: 0
Visual: ''
Software: 1
HardwareSupportLevel: 'none'
SupportsGraphicsSmoothing: 0
SupportsDepthPeelTransparency: 0
SupportsAlignVertexCenters: 0
Extensions: {}
MaxFrameBufferSize: 0]
I also confirm the same error on Ubuntu 16.04 using driver 361.42 with GTX 950M on MATLAB 2014b.
Using the flag -softwareopengl the error is not shown at startup, but when I try to plot:
a=[1:100]; b=sin(linspace(0,2*pi,100)); plot(a,b)
javax.media.opengl.GLException: X11GLXDrawableFactory - Could not initialize shared resources for :0
at jogamp.opengl.x11.glx.X11GLXDrawableFactory$SharedResourceImplementation.createSharedResource(X11GLXDrawableFactory.java:316)
at jogamp.opengl.SharedResourceRunner.run(SharedResourceRunner.java:295)
at java.lang.Thread.run(Unknown Source)
Caused by: javax.media.opengl.GLException: glXGetConfig(0x1) failed: error code GLX_BAD_SCREEN
at jogamp.opengl.x11.glx.X11GLXGraphicsConfiguration.glXGetConfig(X11GLXGraphicsConfiguration.java:570)
at jogamp.opengl.x11.glx.X11GLXGraphicsConfiguration.XVisualInfo2GLCapabilities(X11GLXGraphicsConfiguration.java:500)
at jogamp.opengl.x11.glx.X11GLXGraphicsConfigurationFactory.chooseGraphicsConfigurationXVisual(X11GLXGraphicsConfigurationFactory.java:433)
at jogamp.opengl.x11.glx.X11GLXGraphicsConfigurationFactory.chooseGraphicsConfigurationStatic(X11GLXGraphicsConfigurationFactory.java:239)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory.createMutableSurfaceImpl(X11GLXDrawableFactory.java:511)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory.createDummySurfaceImpl(X11GLXDrawableFactory.java:522)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory$SharedResourceImplementation.createSharedResource(X11GLXDrawableFactory.java:276)
... 2 more
Exception in thread "AWT-EventQueue-0" javax.media.opengl.GLException: Profile GL_DEFAULT is not available on X11GraphicsDevice[type .x11, connection :0, unitID 0, handle 0x0, owner false, ResourceToolkitLock[obj 0x1d5abd41, isOwner false, <303f0575, 797f5d11>[count 0, qsz 0, owner <NULL>]]], but: []
at javax.media.opengl.GLProfile.get(GLProfile.java:901)
at javax.media.opengl.GLProfile.getDefault(GLProfile.java:632)
at javax.media.opengl.GLCapabilities.<init>(GLCapabilities.java:84)
at com.mathworks.hg.peer.JavaSceneServerPeer.getCaps(JavaSceneServerPeer.java:147)
at com.mathworks.hg.peer.JavaSceneServerPeer.doCreateCanvas(JavaSceneServerPeer.java:676)
at com.mathworks.hg.peer.JavaSceneServerPeer.access$200(JavaSceneServerPeer.java:50)
at com.mathworks.hg.peer.JavaSceneServerPeer$2.run(JavaSceneServerPeer.java:650)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
So the flag did not solve the error, just hid it.
EDIT: Using X.Org X server (open source) driver fixed the problem, but I think that is not the solution for those who want to use proprietary drivers…
EDIT 2: It still crashing when I try to manipulate 3d graphic such as: