JVM crash in Surface Pro

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

JVM crash in Surface Pro

runiter
Hi, after your previous enhancements I stopped getting crashed in Intel video cards...until now.

My Ardor3D application used to work fine in my surface pro, but then I was forced to perform a factory reset followed by a firmware upgrade in my surface pro. Now Ardor3D causes the JVM to crash. Also JOGl and LWJGL cause the JVM to crash. All the non-java 3D applications work fine though.

The crash is coming from an intell dll and in the following stackframe:

Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [ig7icd32.dll+0x3b60e]
C  [ig7icd32.dll+0x2ec75]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  jogamp.opengl.windows.wgl.WGL.dispatch_wglCreateContext0(JJ)J+0
j  jogamp.opengl.windows.wgl.WGL.wglCreateContext(J)J+25
j  jogamp.opengl.windows.wgl.WindowsWGLContext.createImpl(Ljogamp/opengl/GLContextImpl;)Z+190
j  jogamp.opengl.GLContextImpl.makeCurrentWithinLock(I)I+47
j  jogamp.opengl.GLContextImpl.makeCurrent(Z)I+469
j  jogamp.opengl.GLContextImpl.makeCurrent()I+2
j  jogamp.opengl.windows.wgl.WindowsWGLDrawableFactory$SharedResourceImplementation.createSharedResource(Ljava/lang/String;)Ljogamp/opengl/SharedResourceRunner$Resource;+158
j  jogamp.opengl.SharedResourceRunner.run()V+270
j  java.lang.Thread.run()V+11
v  ~StubRoutines::call_stub

Attached is the full JVM crash log. Any idea why could be causing this?

hs_err_pid3888.log
Saeid Nourian, Ph.D. Eng. | Graphing Calculator 3D
Reply | Threaded
Open this post in threaded view
|

Re: JVM crash in Surface Pro

gouessej
Administrator
Hi

Sorry but you see it crashes very early in the creation of the context, it comes from the driver, it has absolutely nothing to do with my changes and I have never used Ardor3D with a Surface Pro. I remind you that having regressions in OpenGL drivers for Surface Pro is something common, it already happened several times. Ensure you really use Intel driver, not Microsoft driver.

Edit.: Some drivers for Intel 4000 HD can cause similar crashes.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: JVM crash in Surface Pro

runiter
This post was updated on .
Unfortunately Surface Pro doesn't allow installing non-Microsoft drivers! When I tried to do so I got an error saying that surface doesn't allow it and that I should use windows update to get latest video drivers.


But here is another development: I realized that Java 64bit works fine! The crash only occurs in Java 32bit! If it works in Java 64bit then the problem can't be video driver, can it?
Saeid Nourian, Ph.D. Eng. | Graphing Calculator 3D
Reply | Threaded
Open this post in threaded view
|

Re: JVM crash in Surface Pro

gouessej
Administrator
This is the expected behaviour, it is not recommended to use a driver for 64 bits architecture with a 32 bits JVM especially under Windows, even with a desktop computer. Thank you for pointing out this important detail.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: JVM crash in Surface Pro

runiter
gouessej wrote
This is the expected behaviour, it is not recommended to use a driver for 64 bits architecture with a 32 bits JVM especially under Windows, even with a desktop computer. Thank you for pointing out this important detail.
This is problematic because most browsers are 32bit and when users try to install java, their browser forwards them to 32bit java. So most users in 64bit windows end up with java 32bit in their machine.

Sometimes I wish windows would do the same thing as Mac OS X did and completely discontinue support for 32bit to make things simpler for us developers.
Saeid Nourian, Ph.D. Eng. | Graphing Calculator 3D
Reply | Threaded
Open this post in threaded view
|

Re: JVM crash in Surface Pro

gouessej
Administrator
We can do nothing about this problem. I have the same kind of issue on some professional projects, tons of 32-bits libraries, a 32-bits JVM even on 64-bits machines, I get a consistent behaviour on lots of machines (but not all under Windows). There is the same limitation for OpenAL.

I think that Oracle should detect the architecture and forward users to 64-bits JVMs.
Julien Gouesse | Personal blog | Website