JDK-6678929 : Slow client JVM initialization at applet launch time (2)
  • Type: Bug
  • Component: deploy
  • Sub-Component: plugin
  • Affected Version: 6u10
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2008-03-23
  • Updated: 2010-09-08
  • Resolved: 2008-04-29
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 6
6u10 b23Fixed
Related Reports
Duplicate :  
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Description
CR 6668037 started to fix the slow launch time, and boost it about 200ms.

We figured, this is not sufficient, 
and need to measure the 'coast-coast' startup time,
which is from client JVM launch until the call of applet.init().

We have a 'gut' feeling, that this period is >> 1s,
at least on Unix.

While impl. the 2nd iteration to boost the performance,
the measurement showed, that the JVM launch time itself differs each time
and lies around 200-400ms.

The total launch time incl. JVM until applet.init()
was around 1.4s on GNU/Linux x86_64 running 32bit binaries.

Comments
SUGGESTED FIX To minimize the overal startup time of a first applet launch, we have to break the linear initialization sequence and parallelize it. It turns out, that some of the AWT functionality can be 'warmed-up' in parallel, while the IPC layer is initialized. Another benefit is the usage of UnixDomainSockets (AF_UNIX) and the now platform transport unification on NamedPipe. The former SocketTransport initialization with it's socket setup, took about 100ms.
09-04-2008

EVALUATION To minimize the overal startup time of a first applet launch, we have to break the linear initialization sequence and parallelize it. It turns out, that some of the AWT functionality can be 'warmed-up' in parallel, while the IPC layer is initialized.
23-03-2008