use crateAffinityMask;
/// A set of cores sharing one L2 cache instance.
///
/// Where an [`L3Domain`](crate::L3Domain) is the last-level-cache sharing group (a CCD on chiplet AMD,
/// a cluster on hybrid Intel), an L2 domain is the much finer group that shares one L2: on most desktop
/// parts that is a single physical core plus its SMT siblings; on hybrid Intel the efficiency cores
/// share an L2 in clusters. Sharing L2 is the shortest core-to-core path, so this is the granularity at
/// which two threads are "closest" - the unit for slicing a few cooperating threads out of a larger L3
/// domain.
///
/// Domains are content-keyed during detection (by the lowest member LP of the cache's shared set), and
/// each carries its own [`size_bytes`](Self::size_bytes), so heterogeneous L2 sizes (mixed core kinds)
/// are represented exactly rather than collapsed to a per-kind average.