1. At a data processing device comprising a plurality of processor cores, a shared cache, and a memory including a plurality of memory banks, a method comprising: replacing cache lines at the shared cache, such that a subset of the cache lines associated with threads having a higher spatial locality are assigned a higher replacement priority than a subset of the cache lines associated with threads having a higher temporal locality.