Skip to main content

XWindow Java Apps performance issues

4 replies [Last post]
hari515
Offline
Joined: 2007-02-26

Hi,

I have an issue with my Java app running on Solaris X window system. My application is a JNLP application that runs on tomcat server installed in Solaris 10(with jdk1.5_06). When I launch this app from my windows PC it's working fine, but when I launch it in the solaris environment the application is very much slow(and my requirement is to run it only on XWindow System).
I have Hummingbird Exceed installed on my PC. I have connected to the Solaris box from my Exceed and exported the display. Then when I launch my application as "javaws http://:8080/test.jnlp " the application got installed and started but was very slow to paint the components and inactive to any inputs. My other native XApps are working fine with the same approach.

Can anyone please help me?

Many thanks,
Hari.

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
linuxhippy
Offline
Joined: 2004-01-07

Hi,

This could be caused by readback-operations caused by antialiased fonts and things like that. How are you connected to the X-Client?

You could try to set -Dsun.java2d.pmoffscreen=false in the JNLP file.

lg Clemens

hari515
Offline
Joined: 2007-02-26

Hi,
I tried launching the app with the given property, and found quite improvement in the speed of launch of the app. But still, compared to Windows, it's too slow.
I actually connected to the X-Client though Exceed system. I took an x-term Xwindow, and telneted to the destination machine and then exported my display as :0.0. and then launched the application.

Do the hardware, and network also affect the Java applications? I am working on a SunFire T2000 machine with Solaris 10 and Jdk1.5. When I tried these on a different server than T2000, which is in my same LAN it was working very well.

So thinking it could be either network or hardware issue.

Thanks,
Hari.

linuxhippy
Offline
Joined: 2004-01-07

Well this really depends.
The T2000 is a high-thread machine which may have to low per-thread throughput to run a heavy swing-client snappy. However I don't think so.

1.) How high is the latency between your server (I guess the T2000) and the computer you are running the X-Servers at?

2.) What exactly is slow? Application launch, the UserInterface, the operations the app performs? How slow is slow?

3.) Does your application use a custom LookAndFeel, or the default one (Metal/Ocean)? Some LnFs cause Java2D to fall back to software-rendering which is a killer over network!

4.) You could try to run your apps with the client-compiler. As far as I know the server-compiler is default on such machines.
Launch your app with java -client -jar ....

Good luck! Would be interesting to hear your results.

lg Clemens

hari515
Offline
Joined: 2007-02-26

Hi Clemens,

First of all thank you very much for your support on this. To answer your questions:
>1.) How high is the latency between your server (I guess the T2000) and the computer you are running the X-Servers at?
I don't think there is much latency between the machines as to slow down the application that much. When I launch the same app on different server it works fine.

>2.) What exactly is slow? Application launch, the UserInterface, the operations the app performs? How slow is slow?
First, on the T2000 server the application simply hangs, without showing any component but an empty window. Sometimes that make my X server to not respond. On the other SunFire and SunBlade servers the application launch is fairly fast; the UI takes a little while to paint completely but there after it's quite good. However, this is not as fast as the Windows application launch. :(

>3.) Does your application use a custom LookAndFeel, or the default one (Metal/Ocean)? Some LnFs cause Java2D to fall back to software-rendering which is a killer over network!
We do have several LnFs but the default is Metal. But I think there was no big difference when I change the LnF to either Motif or to GTK+.

>4.) You could try to run your apps with the client-compiler. As far as I know the server-compiler is default on such machines.
Launch your app with java -client -jar ....
I tried to launch the app as above but that too didn't help.:(

Thanks,
Hari.