HyperThreading and CPU topologies.
Poul-Henning Kamp
phk at phk.freebsd.dk
Thu Jun 12 04:46:01 PDT 2003
In message <20030612051553.J36168-100000 at mail.chesapeake.net>, Jeff Roberson wr
ites:
>Index: smp.h
>===================================================================
>RCS file: /home/ncvs/src/sys/sys/smp.h,v
>retrieving revision 1.72
>diff -r1.72 smp.h
>19a20,46
>>
>> /*
>> * Topology of a NUMA or HTT system.
>> *
>> * The top level topology is an array of pointers to groups. Each group
>> * contains a bitmask of cpus in its group or subgroups. It may also
>> * contain a pointer to an array of child groups.
>> *
>> * The bitmasks at non leaf groups may be used by consumers who support
>> * a smaller depth than the hardware provides.
>> *
>> * The topology may be omitted by systems where all CPUs are equal.
>> */
>>
>> struct cpu_group {
>> int cg_mask; /* Mask of cpus in this group. */
u_int ?
uint32_t ?
>> int cg_count; /* Count of cpus in this group. */
>> int cg_children; /* Number of children groups. */
>> struct cpu_group **cg_child; /* Optional child group. */
>> };
>>
>> struct cpu_top {
>> int ct_count; /* Count of groups. */
>> struct cpu_group **ct_group; /* Array of pointers to cpu
>groups. */
>> };
>>
>> extern struct cpu_top *smp_topology;
--
Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG | TCP/IP since RFC 956
FreeBSD committer | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
More information about the freebsd-arch
mailing list