HyperThreading and CPU topologies.
Marcel Moolenaar
marcel at xcllnt.net
Thu Jun 12 11:54:44 PDT 2003
On Thu, Jun 12, 2003 at 02:28:52PM -0400, Jeff Roberson wrote:
>
> On Thu, 12 Jun 2003, Marcel Moolenaar wrote:
>
> > On Thu, Jun 12, 2003 at 01:45:52PM +0200, Poul-Henning Kamp wrote:
> > > 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 ?
> >
> > It's best to make it MD depedendent. I prefer 64-bit masks in ia64.
> >
>
> I thought I was being consistent with the rest of the file but it turns
> out that it uses u_int so I'm changing to that. If someone wants to make
> a pass through the smp code and make a cpu_bitmap_t or something they are
> welcome.
I have this on my radar for a while. Mostly because of the PCPU
masks. It's not urgent, so the sweep will not happen anytime soon.
Hence, it's also not a problem if you favor consistency for now.
--
Marcel Moolenaar USPA: A-39004 marcel at xcllnt.net
More information about the freebsd-arch
mailing list