Hi I compiled wip/jdk16 on my new machine which has 2 cores, uname -a gives
DragonFly [name] 2.10-RELEASE DragonFly v2.10.1.1.gf7ba0-RELEASE #2: Mon Apr 25 12:53:34 PDT 2011 [email protected]:/usr/obj/usr/src/sys/X86_64_GENERIC_SMP x86_64 but it runs 2x to 4x times slower than lang/jdk16 on my old machine which has a single core, slower processor and an i386 UP kernel. In addition, lang/jdk16 on old box runs on linux emulation. The slow performance of wip/jdk16 on the new machine is very puzzling since the new box is faster on every count! What could be wrong? I noticed is that when running java on the new 2 core machine, top shows that java is permanently in state umtxsl: --- top --- 89626 john 0 1201M 352K umtxsl 2 0:00 0:00 0.00% java --- --- --- In addition I noticed that when I run my java program in a terminal, there appeared this output (lines starting with "thr_umtx_wait" below): --- java console output START --- . . . [program output; process runs ca 2 min] . . . thr_umtx_wait: FAULT VALUE CHANGE 25 -> 26 oncond 0x80067071c . . . [program output; process runs ca 2 min] . . . thr_umtx_wait: FAULT VALUE CHANGE 32 -> 33 oncond 0x80067071c . . .[more program output] . . . thr_umtx_wait: FAULT VALUE CHANGE 36 -> 37 oncond 0x80067071c . . . thr_umtx_wait: FAULT VALUE CHANGE 49 -> 50 oncond 0x80067071c . . . --- java console output END --- I wonder if this relates to system rather than java? Many thanks in advance for help! Sini ---
