主权项 |
1. A method of operating a cache memory of a data processing system, comprising:
creating, by a pollution vector control, respective pollution vectors to track which of multiple concurrent threads executed by an associated processor core are currently polluted by a store operation resident in the cache memory, wherein the cache memory is a lower level cache memory; comparing, by respective comparators, a load target address of a load operation that hits in an upper level cache memory that is associated with the lower level cache memory to active store target addresses in the lower level cache memory; and in response to a match of the load target address with one or more of the active store target addresses in the lower level cache memory, setting, by the pollution vector control, an associated one of the respective pollution vectors to indicate that a thread that issued the load operation is polluted by a given store operation active in the lower level cache memory; setting, by a store queue controller, dependencies in a dependency data structure of a store queue of the cache memory based on the pollution vectors to reduce unnecessary ordering effects; and dispatching store operations from the store queue in accordance with the dependencies indicated by the dependency data structure. |