How many threads did a process create? (Seeing high lock contention)
Hi all,
Is there any tool that can tell me how many _total_ threads a process spawned over it's lifetime?
I'm trying to debug an issue whereby we're seeing a serious performance drop when moving to a new system with more cores. (An Oracle X5-2 if that matters.)
On both new and old boxes the app is hard coded to use "36" threads. New box actually has 36 real cores. The old box only had 20 real cores.
prstat shows much time is spent in the LCK state for the app's LWPs. Some stack examination shows that things are getting stuck in some memory allocation locks. (This is C++ code, and I did try mtmalloc which only helped a little.)