cpu_idle_hlt (Re: Confused about HyperThreading and Performance)

Eugene M. Kim ab at astralblue.net
Thu Nov 13 02:06:32 PST 2003


John Baldwin wrote:

> Also, as someone else mentioned, setting 'machdep.cpu_idle_hlt=1' can 
> be useful on some HTT systems. However, p4's have a problem with their 
> interrupt routing that can leave the second CPU halted for a long time 
> if you do that.


I have a few quick questions...  Searched on Google but couldn't get 
satisfactory answers:

1. Without cpu_idle_hlt, is the problem that the idle spin loop one 
logical CPU executes would eat up CPU time and prevent the other logical 
CPU from running?

2. If so, would it explain the unusually high percentage of system time 
and unusually low percentage of user time (shown on systat -vm 1) when 
processes should be mostly doing CPU work and some heavy disk I/O at the 
same time?

3. Is cpu_idle_hlt also potentially unsafe on P4 Xeon-based SMP systems?

Thanks,
Eugene

P.S. It'd be greatly appreciated if someone could point to an in-depth 
discussion about Hyperthreading and cpu_idle_hlt...  *yells at his poor 
Googling skill XD*


More information about the freebsd-hackers mailing list