Re: Topology aware scheduling algorithm.




On Feb 25, 2008, at 11:51 PM, Jeff Roberson wrote:


On Tue, 26 Feb 2008, David Xu wrote:

Jeff Roberson wrote:

I think our identcpu.c already detects this information. That's what I'm using. Although I assume that all cpus are identical and fall back on a flat topology if this isn't the case. I'd like to start including more cache information though.
Jeff

The patch does not assume all cpus are identical, in theory, one can have a machine with one cpu is 4-core and another is 2-core cpu.
only one place needs to be fixed in the patch,the global variable
cpu_feature, which is easy to fix for the patch.

cpuid_count(4, cache_level, regs);
if ((regs[0] & 0x1f) == 0)
break;
threads_per_cache = ((regs[0] & 0x3ffc000) >> 14) + 1;

Does this work on all intel/amd cpus?

That won't work on AMD, as they don't support cpuid 4, as far as I know.

-- Suleiman

_______________________________________________
freebsd-current@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe@xxxxxxxxxxx"



Relevant Pages

  • [PATCH -tip] v10 scalable classic RCU implementation
    ... results in massive internal-to-RCU lock contention on systems with ... more than a few hundred CPUs. ... Although this patch creates a separate ... flavor of RCU for ease of review and patch maintenance, ...
    (Linux-Kernel)
  • [PATCH sched-devel 7/7] cpuisol: Do not halt isolated CPUs with Stop Machine
    ... This patch makes "stop machine" ignore isolated CPUs. ... It addresses exact same usecase explained in the previous workqueue isolation patch. ...
    (Linux-Kernel)
  • Re: Undocumented and duplicated code
    ... see if duron support PAT. ... There must be some CPUs with the "pat" flag set but not being usable? ... places doesn't look good - this really deserved from the beginning being factored out into an own function to avoid future problems when CPUs get added (like what happens with your patch here - it touches only one place, and since the same context is present in two places in the same file "patch" might even choose freely where it gets applied...). ...
    (Linux-Kernel)
  • Re: [RESEND PATCH] TSC: resync TSCs on AMD CPUs
    ... This patch seem to have fallen through the cracks... ... Subject: TSC: resync TSCs on AMD CPUs ...
    (Linux-Kernel)
  • Re: [PATCH 1/2] boot: increase stack size for kernel boot loader decompressor
    ... I see you have applied the following patch to x86#for-akpm. ... I think you ment to use this one ... included but not your boot tweak. ... would you expect a real 4K CPUs system to boot any differently? ...
    (Linux-Kernel)