On 25/05/2010 20:45, Wheeler, Kyle Bruce wrote:
> I noticed that hwloc doesn't appear to have a way of reporting (minimum) cache line size... which is obviously useful and important for avoiding false-sharing issues. I've been hacking together a way to do it in what passes for a cross-platform method. My code is currently in qthreads (http://www.cs.sandia.gov/qthreads/), in the cacheline.c file. Would this be something that the hwloc developers would be interested in integrating into hwloc?
Numerous ideas like this were proposed and we're not sure where to stop.
If we start doing this, people will ask for the processor frequency, the
number of floating point units per core, the associativity of the cache,
the type of memory, ... lots of things that are not really related to
topology but may be useful to some applications. Cache line size isn't
that bad, but it's borderline, so I don't know if we want it. There are
many other specific tools to gather such random hardware information,
merging all of them inside hwloc wouldn't be good.
Talking about caches, one thing we need to think about is Instruction
caches (we only gather Data and Unified caches on Linux so far).