Migrating Java Applications to HP-UX
31
• Reduces cache-to-cache misses by keeping accesses local and preventing scheduler from
moving processes across locality domains
For an application server such as Oracle Weblogic, we recommend assigning one Java instance to a
processor set with 2-4 cores.
For instructions on using processor sets, refer to man pages “man psrset”
or
http://h71028.www7.hp.com/enterprise/us/en/os/hpux11i-prm-processor-sets.html
Figures 25 and 26 below illustrate an example of an application, using Oracle Weblogic application
server, which initially did not scale when moving from 2 cores to 8 cores. After changing to run
multiple Java instances, each in a 2-core processor set, the application achieved the desired scaling
and goal performance.
Figure 25 shows the Threads Histogram for a single instance of weblogic running on 8 cores. The 8
weblogic.socket.Muxer threads show substantial lock contention; one of the threads is at 88%
lock contention. (This is a common scenario.)
Figure 26 shows the result after running multiple weblogic instances each in a 2-core pset. The
number of socket.Muxer threads was also reduced to 3 per instance (instead of 8). The screen
shows the Threads Histogram for a single instance. Although there is still some lock contention, it has
been noticably reduced.
Figure 25 Threads Histogram (before)