Question

I have a Swing Application which is run (among other environments) on HPUX Blades and displayed on ThinClients. Unfortunately, we developed on Windows boxes.

With the Blade/ThinClient setup, we have severe performance issues, which I believe might be due to the remote rendering. The UI is barely usable (a table that reacts to clicks in <50ms in Windows, eg. drawing the focus border around a cell, will take 750 - 1500ms for the same operation in HPUX).

Does anyone have similar experiences and - better yet - a way to remedy it? This article sounds to me like the performance issues may come from use of alpha blending or antialiasing. It is entirely possible that some code within the application or one of the libraries uses one or both of those. Is there a simple way to just disallow it completely? Some obscure, rarely mentioned JVM flag perhaps?


Summary:

  • Swing App runs on HPUX Blade
  • Displays on ThinClient (X forwarding)
  • Severe performance problems when compared to windows / linux desktop pc
  • How do I optimize for that?
Was it helpful?

Solution

There is active development around protocols to address this very issue: displaying graphical interfaces remotely. The two big boys are VMware (PCoIP) and Citrix (HDX), with Microsoft joining the fray (RDP and RemoteFX). That alone should indicate that it's not a trivial problem to solve well.

There are various thin-clients that will dramatically improve your experience in combination with the above protocols (which is "best" is a heated debate involving marketing so I won't go into that).

Since you are running the application in an HPUX environment, you can try RGS, although I don't think it's free.

To mitigate the problem on the cheap, try leveraging an existing remote desktop application like VNC i.e. log in remotely with VNC and then display your Swing App locally, and let VNC handle the remoting of the graphics.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top