Skip to main content

Multiple jvm performance.

2 replies [Last post]
yajun
Offline
Joined: 2006-10-12

I'm doing performance test on a database application. The application is cpu bound. When running 3 jvms on three different machines, the throughput is 3x of single jvm; when running 3 jvms on a single box, the throughput is 1.9x.

What could be the contention? There is no swap.

The following is the configuration:

The JVM is 1.4.2.

The OS is Red Hat Enterprise Linux AS release 4 (Nahant Update 2)

cpuinfo is:
vendor_id : AuthenticAMD
cpu family : 15
model : 5
model name : AMD Opteron(tm) Processor 250
stepping : 10
cpu MHz : 2390.351
cache size : 1024 KB
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext lm 3dnowext 3dnow
bogomips : 4718.59
TLB size : 1088 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp

processor : 1
vendor_id : AuthenticAMD
cpu family : 15
model : 5
model name : AMD Opteron(tm) Processor 250
stepping : 10
cpu MHz : 2390.351
cache size : 1024 KB
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext lm 3dnowext 3dnow
bogomips : 4767.74
TLB size : 1088 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp

meminfo is:
MemTotal: 8111476 kB
MemFree: 7779280 kB
Buffers: 41512 kB
Cached: 201792 kB
SwapCached: 0 kB
Active: 203964 kB
Inactive: 59968 kB
HighTotal: 0 kB
HighFree: 0 kB
LowTotal: 8111476 kB
LowFree: 7779280 kB
SwapTotal: 33551744 kB
SwapFree: 33551744 kB
Dirty: 96 kB
Writeback: 0 kB
Mapped: 31848 kB
Slab: 39768 kB
Committed_AS: 71664 kB
PageTables: 1496 kB
VmallocTotal: 536870911 kB
VmallocUsed: 16648 kB
VmallocChunk: 536854199 kB
HugePages_Total: 0
HugePages_Free: 0
Hugepagesize: 2048 kB

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
emsti
Offline
Joined: 2006-10-31

On one box you are sharing the same one CPU resource between three JVMs, any improvement you see on the same one box is because of the parallelism allowed with the 3 JVMs.

With 3 boxes you are separating the load among three CPU resources.

olsonje
Offline
Joined: 2005-08-10

emsti, actually it looks, not completely sure, like there are 2 cpu's in that box, thus the 1.9x performance.

More then likely, just running 1 jvm per core/cpu might be the best attempt at seeing how that box would handle it. Just an idea.

Message was edited by: olsonje