Open MPI logo

Hardware Locality Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Hardware Locality Development mailing list

Subject: [hwloc-devel] merging instruction cache branch
From: Brice Goglin (Brice.Goglin_at_[hidden])
Date: 2012-03-13 09:39:21


Hello,

I think I will merge the icache branch by the end of the week if nobody
complains.

This new branch adds a type attribute to cache objects, which can be
DATA, INSTRUCTION or UNIFIED. On Linux sysfs, everything is detected
properly. I am working on the devicetree code. Other OSes currently
report Unified unless I was really sure it was Data.

Instruction caches detection is *disabled by default* because it adds
new levels to the topology (you may have L1d and L1i with different
affinities) and we don't want to break existing applications that may
assume there won't be multiple cache levels with the same cache-depth.
There's a topology flag ("ICACHES") to enable Instruction cache
detection, and a lstopo options (--icaches). If "icaches" is a bad name,
please let me know. "instruction-caches" is very long :)

Data and instruction caches are now shown as "L1d" or "L1dCache" instead
of "L1" or "L1Cache" (normal or verbose). Unified doesn't add a "u"
(unified is always alone, no need to distinguish from data or
instruction with same cache-depth).

Comments welcome.

Brice