On Tue, 2009-10-20 at 23:21 -0500, vitamin wrote: > Martin Gregorie wrote: > > in Linux, threads == processes. > > Eh? It was the case in 2.4.x kernels and older. Not anymore. Read up > on POSIX threads (pthreads). That's what Wine is using. > Fair cop - I was fooled by the way pidstat reports Spamassassin, which runs spawned children. The '-T CHILD' option shows all its child processes. OTOH, for Java the '-t' shows the various active thhreads. > Simplest way program "top". Or any other "system monitors". > If there's much I/O going on 'top' may not show you a lot. Even continuously scrolling a Java GUI app fast up and down a list of 9400 items only showed 40% CPU and a single process entry using "top", while for the same program and workload "pidstat -C java -t 5 20" (show 20 samples at 5 sec intervals for all threads in the only Java process that was running) showed all the running threads and their CPU usage. This suggests that pidstat (part of the sysstat package) may be the best tool for the OP to use since it can be run in a separate terminal window without any special setup. Martin