Java3D crashes : sweethome3D on Ubuntu

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Java3D crashes : sweethome3D on Ubuntu

mohican
Hello,
Sweethome3D uses Java3D and works well on Windows and worked well on Ubuntu 12.04.
However I and other users experienced repeated crashes on Ubuntu 14.04 and Ubuntu 16.04
(All of this on the same computer).

Several bug reports related to this problem have been filled (mostly duplicates I think) for this software :
https://sourceforge.net/p/sweethome3d/bugs/583/
https://sourceforge.net/p/sweethome3d/bugs/674/
https://sourceforge.net/p/sweethome3d/bugs/680/
https://sourceforge.net/p/sweethome3d/bugs/695/
https://sourceforge.net/p/sweethome3d/bugs/700/

In my case, I have a AMD Radeon HD6570 graphic card and I use the free (default) radeon driver.

Any idea on this subject ?
Thank you.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java3D crashes : sweethome3D on Ubuntu

philjord
The very first thought I have on this is that SweetHome3D runs on Java3D 1.5 which is the version prior to the version supported here, being Java3D 1.6.

Java3D 1.6 added a new pipeline called JoglPipeline that requires the jogl-all-2.3.2.jar file and gluegen-rt-2.3.2.jar

In the bug reports you've referenced I see
https://sourceforge.net/p/sweethome3d/bugs/583/ has a classpath that doesn't include the 2 jars above
and
https://sourceforge.net/p/sweethome3d/bugs/700/
has a stack trace that uses the Java3D 1.5 pipeline called NativePipeline

So although I can't get the exact code for a Linux machine (I'm on windows) this suggests you have a bug with a version we can't support.

However I did notice that SweetHome3D version 5.1 added support for Java3D 1.6 pre12 into the Mac OSX code, so perhaps there's hope of moving it forward and people on this forum being able to help
http://www.sweethome3d.com/history.jsp

I can't seem to find an easy way to get the Mac jars to download and run, to many assitive tools in the way.

Perhaps if you talk to the SweetHome3D developer he'll help you get the Mac version to run on your machine (should be literally trivial), then forward through a bug report if something similar happens.

Sorry I can't be more useful than that.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java3D crashes : sweethome3D on Ubuntu

gouessej
Administrator
In reply to this post by mohican
Hi

I already succeeded in building and running Sweethome 3D with Java3D 1.6.0 pre 12. I have to suggest Emmanuel to use our stuff as I'm almost sure that it would fix those bugs.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java3D crashes : sweethome3D on Ubuntu

Manu
I'll try Java3D 1.6.0 in the next beta versions of Sweet Home 3D for Linux and Windows. We'll see how it works, but anyway, I might keep the ability to switch to version Java3D 1.5.2.
Emmanuel Puybaret
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java3D crashes : sweethome3D on Ubuntu

gouessej
Administrator
This "ability" would be only useful for the very old operating systems unable to support Java 1.7, it wouldn't be very useful for Ubuntu but I know that numerous people use Sweethome 3D under OS X.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java3D crashes : sweethome3D on Ubuntu

Manu
Beta versions of Sweet Home 3D using Java3D 1.6.0 under Windows and Linux are available here.
A user reported it didn't work under Linux / Mint 18 (but fortunately, the Jar executable which allows to switch back to Java3D 1.5.2 works for him) and another Windows 10 user didn't see any progress for his problem.
Hope there won't be more bad feedback
Emmanuel Puybaret
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java3D crashes : sweethome3D on Ubuntu

gouessej
Administrator
As expected, mohican confirmed that the beta version works better on his machine under Ubuntu Linux which is encouraging. We can do nothing for abandoned Intel OpenGL drivers that claim to work, it's a known problem, Phil suggested to show at least a message in the log. Please give us more info about the bug under Linux Mint 18. I still consider that Java3D 1.6.0 is globally more reliable than Java3D 1.5.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java3D crashes : sweethome3D on Ubuntu

Manu
Would you have any idea why it could run really slower with Java3D 1.6 than Java3D 1.5.2 under Linux?
Emmanuel Puybaret
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java3D crashes : sweethome3D on Ubuntu

gouessej
Administrator
No but we'll have to investigate. Maybe the way the OpenGL context is managed adds a serious performance penalty.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java3D crashes : sweethome3D on Ubuntu

Manu
This post was updated on .
How can I investigate about this slowness?
I used Java VisualVM to test Sweet Home 3D under Java3D 1.5.2 and 1.6.0 in the same conditions, and it didn't reveal anything that could explain this slowness. Would it be correct to conclude the GPU load is much higher? How to tune the OpenGL context? Did any other person complain of such slowness under Linux?

If you want, you can try it on your side:
- download the Jar executable http://sourceforge.net/projects/sweethome3d/files/SweetHome3D-5.3.jar
- download a large enough home like http://www.sweethome3d.com/examples/SweetHome3DExample10-FlatWithMezzanine.sh3d
- run the Jar executable, open the downloaded example and drag and drop the mouse pointer in the 3D view. You should see that while dragging, the animation isn't very fluid even it's still usable.

If you want to compare with Java3D 1.5.2, open a Terminal window and run Sweet Home 3D with the -Dcom.eteks.sweethome3d.j3d.version=1.5.2 Java option:
java -Dcom.eteks.sweethome3d.j3d.version=1.5.2 -jar path/to/SweetHome3D-5.3.jar

Hope you can help...
Emmanuel Puybaret
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java3D crashes : sweethome3D on Ubuntu

philjord
I have no Linux world at all, I've tested on Windows obviously but it appears very similar.
Julien are you able to lok at this? I presume this will have to be a Jogl issue, the Java3D code must surely be nearly exactly the same.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java3D crashes : sweethome3D on Ubuntu

gouessej
Administrator
Actually, I have no idea of the possible root cause yet but some changes you did in Java3D 1.7.0 may have a noticeable impact on this kind of use case.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java3D crashes : sweethome3D on Ubuntu

hharrison
In reply to this post by philjord
Just to clarify, the 1.5.2 code for Java3D was pretty significantly different than the 1.6.0 code where I removed the native backends and relied on jogl for all OpenGL access.

Previously:
Linux, Solaris, Win64 - native OpenGL backend
Win32 - native direct3d backend
MacOS - jogl backend

The jogl backend was developed by transcribing the native opengl backend, but there still could be bugs in the transcription from back then.

Harvey
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Java3D crashes : sweethome3D on Ubuntu

philjord
In reply to this post by Manu
Emmanuel,
I'd like to have a go at this issue at some point but I'm working on other things just now.

Have you seen this post:
http://forum.jogamp.org/Poor-performances-on-Linux-Ubuntu-unless-desktop-effects-are-disabled-td4032647.html

It was referring to Ubuntu performance issue on 1.6.0 that weren't there under 1.5.2, and has some suggested solutions at the end.

If you have seen it sorry for pointing out the obvious (again!)
Loading...