EasyManua.ls Logo

IBM Power7 - Page 196

IBM Power7
224 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
180 POWER7 and POWER7+ Optimization and Tuning Guide
Example B-12 shows how this program was run and profiled on AIX. 64-bit Java was used
with the options -Xms10m and -Xmx10m to specify the size of the Java heap. The profile that is
generated appears in the java.prof file.
Example B-12 Results of running tprof on AIX
# tprof -ujeskzl -A -I -E -x java -Xms10m -Xmx10m -agentlib:jpa64=instructions=1 ProfileTest
Starting Command java -Xms10m -Xmx10m -agentlib:jpa64=instructions=1 ProfileTest
sum: 12518.481782746869
sum: 12507.63528674597
sum: 12526.320955364286
stopping trace collection.
Sun Oct 30 15:04:21 2011
System: AIX 6.1 Node: el9-90-28 Machine: 00F603F74C00
Generating java.trc
Generating java.syms
Generating java.prof
Example B-13 and Example B-14 on page 181 contain excerpts from the java.prof file that
is created on AIX. The notable elements of the profile are:
򐂰 Lock contention impact: The impact of spin locking is shown in Example B-13 as ticks in
the libj9jit24.so helper routine jitMonitorEntry, in the AIX pthreads library
libpthreads.a, and in the AIX kernel routine_check_lock. This Java program clearly has
excessive lock contention with jitMonitorEntry consuming 26.66% of the ticks in the
profile. jitMonitorEntry and other routines, such as jitMethodMonitorEntry, indicate
spin locking at the Java language level, and impact in the pthreads library or _check_lock
is locking at the system level, which might or might not be associated with Java locks. For
example, libpthreads.a and _check_lock are active for lock contention that is related to
malloc on AIX.
Example B-13 AIX profile excerpt showing kernel and shared library ticks
Total Ticks For All Processes (KERNEL) = 690
Subroutine Ticks % Source Address Bytes
========== ===== ====== ====== ======= =====
._check_lock 240 5.71 low.s 3420 40
Shared Object Ticks % Address Bytes
============= ===== ====== ======= =====
libj9jit24.so 1157 27.51 900000003e81240 5c8878
libj9gc24.so 510 12.13 900000004534200 91d66
/usr/lib/libpthreads.a[shr_xpg5_64.o] 175 4.16 900000000b83200 30aa0
Profile: libj9jit24.so
Total Ticks For All Processes (libj9jit24.so) = 1157
Subroutine Ticks % Source Address Bytes

Table of Contents

Related product manuals