summaryrefslogtreecommitdiffstats
path: root/lib/libthr/thread/thr_fork.c
diff options
context:
space:
mode:
authorsobomax <sobomax@FreeBSD.org>2006-09-05 17:15:24 +0000
committersobomax <sobomax@FreeBSD.org>2006-09-05 17:15:24 +0000
commit6c1dd2ff2079e60eaafa92b3fb887de8704ac458 (patch)
treeac500619f7776aa169cd5bd9d9440a35a6890b48 /lib/libthr/thread/thr_fork.c
parent3aee831e44f0f83719ffa5cf1a7fed5df13f619c (diff)
downloadFreeBSD-src-6c1dd2ff2079e60eaafa92b3fb887de8704ac458.zip
FreeBSD-src-6c1dd2ff2079e60eaafa92b3fb887de8704ac458.tar.gz
The FreeBSD by default "disables" hyper-threading cores, by not scheduling
any threads to them. However, it still counts those cores as "active but permanently idle" when calculating system-wide CPUs statistics. It is incorrect, since it skews statistics quite a bit and creates real problems for certain types of applications (monitoring applications for example), by making them believe that the system does have enough idle CPU resources, while in fact it does not. Correct the problem by not calling performance counting routines on "disabled" cores. The cleaner solution would be to just disable APIC timer interrupts on those cores completely, but ENOTIME here and it is not clear if the additional complexity really worth minor performance gain. Reviewed by: ssouhlal Sponsored by: Sippy Software, Inc. MFC after: 2 weeks
Diffstat (limited to 'lib/libthr/thread/thr_fork.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud