CPU utilization and hyperthreading

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I'm using a 2.6.4-52 (Suse 9.1 pro distribution) kernel on a 3.2 dual
XEON machine (with hyperthreading).

I'm trying to analyze the performance of a kernel module that contains
4 kernel threads (3 of them are more active). Also, some of the work is
done in a tasklet. The CPU load (as shown in vmstat) doesn't reach more
than 50%.  When trying to artificially stress the system with some
useless loops, the CPU load reaches 65% (but I cannot reach 100%). Also, the
interrupts count in vmstat is around 20000 (1000 when idle).
 
My questions are:
1. Why can't I reach 100%? 
2. I guess that since I have 4 virtual CPUs (as shown in /proc/cpuinfo), not all
of them are stressed. Is there a way to see the CPU utilization for each CPU
(vmstat doesn't allow that)? 
3. When I load a module with a kernel thread that runs an infinite loop, I get
25% CPU utilization (50% if I run 2 threads). Is it because I'm using 100% of a
single CPU (out of 4)?
4. How is the time spent in interrupt context estimated? Is it possible to view
it somehow?

Thanks
Erez



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux