Understand The Bus And Cache Interactions - Intel ARCHITECTURE IA-32 Reference Manual

Architecture optimization
Table of Contents

Advertisement

reads. An approximate working guideline for software to operate below
bus saturation is to check if bus read queue depth is significantly
below 5.
Some MP platform may have a chipset that provides two buses, with
each bus servicing one or more physical processors. The guidelines for
conserving bus bandwidth described above also applies to each bus
domain.

Understand the Bus and Cache Interactions

Be careful when parallelizing code sections with data sets that results in
the total working set exceeding the second-level cache and /or
consumed bandwidth exceeding the capacity of the bus. On an Intel
Core Duo processor, if only one thread is using the second-level cache
and / or bus, then it is expected to get the maximum benefit of the cache
and bus systems because the other core does not interfere with the
progress of the first thread. However, if two threads use the second-level
cache concurrently, there may be performance degradation if one of the
following conditions is true:
Their combined working set is greater than the second-level cache
size
Their combined bus usage is greater than the capacity of the bus
They both have extensive access to the same set in the second-level
cache, and at least one of the threads writes to this cache line
To avoid these pitfalls, multi-threading software should try to
investigate parallelism schemes in which only one of the threads access
the second-level cache at a time, or where the second-level cache and
the bus usage does not exceed their limits.
Multi-Core and Hyper-Threading Technology
7
7-35

Advertisement

Table of Contents
loading

Table of Contents