JVM Tutorials - Herong's Tutorial Examples - v5.13, by Herong Yang
Thread Test on JRockit 28.7
This section provides a tutorial example to see how many running threads can be supported on JRockit R28.2.7 JVMs.
The next test of CrashThread.java is done with JRockit R28.2.7 on my Windows 7 system.
herong> \Progra~1\java\jrockit-jdk1.6.0_45-R28.2.7-4.1.0\bin\java \ CrashThread2.java herong> \Progra~1\java\jrockit-jdk1.6.0_45-R28.2.7-4.1.0\bin\java \ -Xmx16m CrashThread2 64 Time Threads T.Memory F.Memory 8:54:12 PM 1 16384 14773 8:54:12 PM 2 16384 14773 8:54:12 PM 3 16384 14773 ... 8:54:36 PM 60 16384 14773 8:54:37 PM 61 16384 14773 8:54:39 PM 62 16384 14773 8:54:40 PM 63 16384 14773 8:54:41 PM 64 16384 14773
Obviously there is no problem for JRockit JVM to support for 64 running threads. But I noticed that JRockit a little bit longer to launch all 64 threads comparing to HotSpot.
Then I increased # of threads to higher values, I observed the following on system Task Manager:
JRockit JVM R28.2.7 Threads CPU Memory Time 64 99% 18,500K 0.5 minutes to launch slow 128 99% 19,552K 4 minutes to launch very slow 256 99% 21,712K 12 minutes to launch very slow 512 99% 22,392K 39 minutes to launch extremely slow 1024 99% 30 672K 63 minutes to launch extremely slow
Table of Contents
JVM (Java Virtual Machine) Specification
Java HotSpot VM - JVM by Oracle/Sun
java.lang.Runtime Class - The JVM Instance
java.lang.System Class - The Operating System
ClassLoader Class - Class Loaders
Class Class - Class Reflections
JVM Stack, Frame and Stack Overflow
►Thread Testing Program and Result
CrashThread2.java - Thread Testing Program
Thread Test on HotSpot 1.4 and JRockit 7.0
CPU Impact of Multi-Thread Applications
I/O Impact of Multi-Thread Applications
Micro Benchmark Runner and JVM Options
Micro Benchmark Tests on "int" Operations
Micro Benchmark Tests on "long" Operations
Micro Benchmark Tests in JIT Compilation Mode
Micro Benchmark Tests on "float" and "double" Operations