Java3D crash intel 4000.

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

Java3D crash intel 4000.

macster110
This post was updated on .
Hi

I'm part of a team which develops PAMGUARD, an open source program to detect, classify and determine the position of marine mammals from their vocalisations. You can visit www.pamguard.org for more info.

Below is an image of some of the ways we use Java3d.

PAMGUARD Localiser

Recently we've been testing on Windows 8 and have found that java 3d 1.5.2 doesn't seem to work with openGL. Calling GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice() .getBestGraphicsConfigurations() causes the virtual machine to crash with the message:
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6179b60e, pid=1112, tid=6164

Using direct x solves the problem but is far from ideal, causing display errors every so often and slowing things down substantially.

So far the problem appears to be restricted to windows 8 devices with Intel 4000 graphics chips. I've tried using more recent versions of Java3d (1.6.0) with jogl but the same error occurs. I imagine this is an issue with Intel graphics drivers however I have no idea where to begin to solve the problem (is there even a way to solve an issue like this). Ideally we would don't want to have a direct x version of PAMGUARD so if anyone can offer up some advice on how to solve this problem, that would be much appreciated.

I can e-mail error files or you can access here:
https://www.dropbox.com/sh/dk870eqbflakvvn/MTx0viXKKZ

I was running this on a Surface Pro: I can find info on the other laptop we tested on if needed.

Thanks for the help.
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

gouessej
Administrator
Hi

Please try to reproduce this bug in a very rudimentary test case without Java 3D with the latest build of JOGL 2.0. You can use the example I posted on Wikipedia. You will probably have to write a bug report against JOGL. Thank you very much for the log files, it is very useful for us. The crash occurs when creating the OpenGL context. Maybe there is a workaround to make it work despite a driver bug.

Pamguard looks very good.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

hharrison
In reply to this post by macster110
Also, what driver are you using, the default opengl driver shipped with Win8 is abysmal, you really need the
updated Intel drivers to have much hope.

This hopefully will get you started:

http://communities.intel.com/docs/DOC-19647

Harvey
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

Jamie Macaulay
In reply to this post by macster110
Thanks both. I'm now out the office until Monday, but will work on this first thing and get back to you. It's great people are supporting and improving  java3d still; it's been incredibly useful for 3D visualisations over the last few years.
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

hharrison
Can I just confirm you are using the Java3d from here:

http://jogamp.org/deployment/java3d/1.6.0-pre7/

Or are you building it yourself from my github repo?

Harvey
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

Xerxes Rånby
In reply to this post by macster110
Quite a lot of OpenGL projects have started to observe crashes at startup on the Surface Pro after the May 14th firmware upgrade.

http://diydrones.com/forum/topics/mission-planner-crash-after-w8-updates

"Speaking of tablets, some users reported running the game on Microsoft’s Surface Pro tablet, but that didn’t come without problems: the latest video drivers ship with a bug that crashes any OpenGL game at startup…"
http://inthekillhouse.com/dev-diary/

http://www.errordetails.com/210606/surface-firmware-update-breaks-second-bunch-opengl-programs

Thus this issue is most likely related to a bad OpenGL driver update. Try report the driver issue to Microsoft.
Installing the Intel drivers should fix the issue.
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

macster110
This post was updated on .
In reply to this post by macster110
Hi All

I have played around with the gears example I found on the jogl wiki page. It works on a windows 7 machine with ATI graphics card but crashes the jvm on my intel hd4000 computer (MS Surface Pro). The error log is in dropbox here .

Thanks for the advice on drivers but since we're distributing a program used by a lot of people so I'm reticent to ask everyone using windows 8 with an intel chipset to switch from the manufacturers drivers. If the problem was confined to a ms surface pro that would be fine but it seems to be a problem with at least a few windows 8 computers with an intel hd4000 graphics card.

So is it realistic to think a fix is possible within jogl/java3d or is this an issue to address with Microsoft an Intel?

Cheers

Jamie
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

macster110
This post was updated on .
In reply to this post by macster110
Also, in PAMGUARD I have tried java3d from http://jogamp.org/deployment/java3d/1.6.0-pre7/

Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

macster110
In reply to this post by macster110
So I've downloaded intel's own drivers and everything works perfectly- thanks for the link. This is a problem with Microsoft and whatever drivers they're supplying through their update service. If there's a quick fix within Jogl/Java3d great, however if not guess we've just got for Microsoft to get their act together and bring out descent graphics drivers.

For now we'll update PAMGUARD with the latest version of Java3d (1.6.0) and put a notice on the website regarding drivers.

Thanks for the help.

 
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

gouessej
Administrator
In reply to this post by macster110
macster110 wrote
Hi All

I have played around with the gears example I found on the jogl wiki page. It works on a windows 7 machine with ATI graphics card but crashes the jvm on my intel hd4000 computer (MS Surface Pro). The error log is in dropbox here .
Thanks. You should put that into a new bug report.

macster110 wrote
Thanks for the advice on drivers but since we're distributing a program used by a lot of people I'm reticent to ask everyone using windows 8 with an intel chipset to switch from the manufacturers drivers. If the problem was confined to a ms surface pro that would be fine but it seems to be a problem with at least a few windows 8 computers with an intel hd4000 graphics card.
Using the manufacturer drivers is the best thing to do anyway and using the latest drivers is a good practice. Encouraging your users to use obsolete or Microsoft drivers is a bad practice both in terms of security and reliability. Please consider updating your driver (at least on one machine) and confirming whether it fixes this bug.

macster110 wrote
So is there any way to fix this bug within jogl/java3d or is this an issue I need to address with Microsoft an Intel?
In my humble opinion, the root cause of this bug should be fixed in the driver itself. It is not possible to fix it in JOGL 2.0 but maybe (there is no guarantee) Sven can find a way to work around it, some similar "render quirks" have already been implemented in the past. Notice that it will be difficult without the real hardware in his hands.

However, this isn't a good solution on the long term. I don't accuse you but asking us to fix driver bugs is an easy way out to avoid asking the end users to use proper drivers. It means that Microsoft and some manufacturers will go on providing poorer drivers as time goes by and will get accustomed to see some of their bugs fixed in third party libraries and it will mean that the maintainers of these libraries will be held accountable for them. In other words, this tendency could lead to discredit OpenGL and its ecosystem, which is exactly what Microsoft wants (in order to favor Direct3D). Moreover, maybe some bugs won't have any workaround, that's why you should report this bug against your driver in priority.

Sorry to be harsh but I spent several weeks in trying to find a workaround for a bug of the Intel chipset 3000 HD under Windows for Ardor3D without having any computer under this OS and this graphics chip.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

macster110
In reply to this post by macster110
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

macster110
Not harsh. I understand. I especially understand not wanting to go anywhere near this without the hardware in your hands.

Like I said earlier we'll put this on our website as a potential issue with Microsoft drivers, update the to the latest java3d/jogl and leave it at that. Thanks for all the help and  thanks for the work you've put into this area.
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

gouessej
Administrator
Some contributers can investigate but they will need your help if they don't have the same graphics card.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

macster110
Sure: If anyone wants to have a go happy to help where I can.
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

gouessej
Administrator
macster110 wrote
Sure: If anyone wants to have a go happy to help where I can.
Please can you write a proper bug report here in order to avoid forgetting your bug and losing your precious log files if something goes wrong with the drop box?
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

macster110
Apologies for late reply on this. I don't have secondary e-mail account for bugzilla and don't particularly want to set one up. The dropbox folder is still active so if someone with an existing account wants to file this bug that would be appreciated? Happy to supply any info.

Cheers
Reply | Threaded
Open this post in threaded view
|

Re: Java3D crash intel 4000.

gouessej
Administrator
I'm sorry but the best person who should write a bug report is the person able to reproduce it. If I write this bug report for you but you refuse following it (because you don't want to use your primary email account, etc...), it will lead to nowhere, nobody will be able to confirm that this bug is fixed. This forum is nice but we have a specific tool for bug reporting which is better to avoid forgetting unfixed bugs.
Julien Gouesse | Personal blog | Website