Skip to main content

Problem:

  • Product: BES 5.2.1
  • JDK: Sun JDK 1.4.1 and 1.4.2
  • OS: Solaris 8

When partition started with JVM option -XX: UseParallelGC pbind reports partition process bind to CPU.

Resolution:

If you run with -XX: UseParallelGC in JDK-1.4.2, the GC worker threads will get bound to CPUs. But the Java threads are not bound. "pbind" only shows you that one LWP is bound. You can also run with -XX: UseParallelGC -XX:-BindGCTaskThreadsToCPUs so the GC worker threads won't bind themselves to CPUs. That will give up some small amount of GC performance, but likely not enough to worry about if you aren't a benchmarker. In JDK 1.5.0, GC worker threads no longer bind themselves to CPUs by default, giving you some idea of the performance impact.
To conclude, with UseParallelGC option only GC worker threads will get bound to CPU but the Java threads are not bound. If you use BindGCTaskThreadsToCPU together with UseParallelGC GC, worker threads would not bind themselves to CPUs (however that will decrease small amount of GC performance) and "pbind" will not show partition bound to CPU.


#VisiBroker
#Security
#pbind
#gc