![]() ![]() ![]() E.g., Intel’s PREFETCHW instruction requests that the cache line be loaded in anticipation of a store to the line.The instruction definition is written in terms of specific transactions on a model architecture (with caveats that an implementation might do something different).A cache transaction is requested, but it is not required for correctness. ![]() The Intel CLWB instruction was added for this purpose - see E.g., In a system with some non-volatile memory, a processor must have a way to guarantee that dirty data has been written from the (volatile) caches to the non-volatile memory.The specified cache transaction must take place to guarantee correctness.Instructions that directly pertain to caching can be grouped into three categories: If you are not a “cache hint instruction” enthusiast, this may not seem like a big deal, but it actually represents a relatively important shift in instruction design philosophy. Intel’s instruction description mentions this use case explicitly.Cache-to-Cache Intervention Optimization: The cache line is expected to be accessed soon by a different core, and cache-to-cache interventions may be faster if the data is not in the closest level(s) of cache.Temporal Locality Control: The cache line is expected to be re-used, but not so soon that it should remain in the closest/smallest cache.What might such a hint be good for? There are two obvious use cases: The “CLDEMOTE” instruction is a “hint” to the hardware that it might help performance to move a cache line from the cache level(s) closest to the core to a cache level that is further from the core. I recently saw a reference to a future Intel “Atom” core called “Tremont” and ran across an interesting new instruction, “CLDEMOTE”, that will be supported in “Future Tremont and later” microarchitectures (ref: “Intel® Architecture Instruction Set Extensions and Future Features Programming Reference”, document 319433-035, October 2018). ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |