Jeff Roberson wrote:
jeff 2008-03-02 07:58:42 UTC
FreeBSD src repository
Modified files:
sys/amd64/amd64 identcpu.c mp_machdep.c
sys/amd64/include smp.h
sys/i386/i386 identcpu.c mp_machdep.c
sys/i386/include smp.h
sys/ia64/ia64 mp_machdep.c
sys/kern sched_ule.c subr_smp.c
sys/powerpc/powerpc mp_machdep.c
sys/sparc64/sparc64 mp_machdep.c
sys/sun4v/sun4v mp_machdep.c
sys/sys smp.h
Log:
- Remove the old smp cpu topology specification with a new, more flexible
tree structure that encodes the level of cache sharing and other
properties.
- Provide several convenience functions for creating one and two level
cpu trees as well as a default flat topology. The system now always
has some topology.
- On i386 and amd64 create a seperate level in the hierarchy for HTT
and multi-core cpus. This will allow the scheduler to intelligently
load balance non-uniform cores. Presently we don't detect what level
of the cache hierarchy is shared at each level in the topology.
- Add a mechanism for testing common topologies that have more information
than the MD code is able to provide via the kern.smp.topology tunable.
This should be considered a debugging tool only and not a stable api.
Cool! I am just curious if the new topology code is flexible enough to
support cores that come and go on the fly? This could be useful in
several scenarios, such as for example when running under multi-core
aware hypervisor (e.g. Niagara), in the cases when pro-active power
manager shuts down some cores to conserve power, in server applications
when one of CPUs either has fried or has been unplugged, etc.
-Maxim
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "[EMAIL PROTECTED]"