Professional Documents
Culture Documents
Coordinated Multi-Agent Reinforcement Learning Approach To Multi-Level Cache Co-Partitioning
Coordinated Multi-Agent Reinforcement Learning Approach To Multi-Level Cache Co-Partitioning
Rahul Jain
Sreenivas Subramoney
Preeti Ranjan Panda
Introduction
• Dynamic Cache Way Partitioning
• Cache Set-Ways assigned to individual Cores
• Dynamic: Requirement changes during program execution
• Isolation: Cores do not evict other Core’s data
• Simultaneous Multi-Threaded (SMT) Processor
• Parallel Execution of multiple threads on same physical core
• Hyper-Threading on Intel
• Improves Function Unit utilization
• Private Caches are shared: L1 and L2
L2 128 KB Demand
based Data for
allocation both the
L3 1024 KB
Apps fits in
Cache
WSS: Working Set Size
normalized to no-opt
baseline system
STP: System Throughput
29 March 2017 Indian Institute of Technology Delhi, India 5
Cache Partitioning
• Cache Partitioning Technique
• Step 1: Cache Allocation
• Based on Utility Computation
• Step 2: Partitioning Enforcement
•Cache Allocation Utility
• Working Set Size (WSS)
• Reuse Distance of Data
• Application Sensitivity to Latency
• High ILP app would be less sensitive
• Application MLP
• Uncoordinated Agents
• Agents Actions are Independent
• Selfish Agent Actions: What is best for me is best for the
system
• Maximum Utility to Agent
• Can the agents work together ?
• Pick actions jointly for better global optimization
• Maximum Utility to System
-2
+2
Q-Update Smart Update with more
for Action Cache size (L2/L3): Lower
<0, 0> +1 bound on IPC utility
L3 resize
Actions -4 -2 -1 0 +1 +2 +4
Agents receive
reward (IPC) for its Agents executes its
last Action and action of Cache
learns Reconfiguration
System performs
Cache
Reconfigurations
and Executes