Cache Partitioning

In multi-core system where different cores share last-level cache, performance interference between processes become a real issue. Our lab is working on researches to reduce this performance interference. Our lab is working on researches to reduce this performance interference between processes, which can lower the overall performance of the system as well as making it unpredictable.

cache_contention

 

 

 

 

Cache is an important memory structure that plays a crucial role between processors and relatively slow RAM. As trend has moved to multi-core architecture,

However, depending on situations, contention of shared resources can degrade the overall system performance. For example, a cache-unfriendly process can lower the cache efficiency by evicting cacheline of cache-friendly processes.

cache_pollution

 

One solution to this problem is to define hot and cold data and partition cache space by only allocating least amount of cache to cold data and preserve as large space as possible to hot data, thereby increasing the overall efficiency of the cache system. We were able to increase performance by approximately 30 % in multi-core system with this implementation.

hot_cold