Coordinated Reinforcement Learning Prefetching Architecture for Multicore Systems

📄 arXiv: 2509.10719v1 📥 PDF

作者: Mohammed Humaid Siddiqui, Fernando Guzman, Yufei Wu, Ruishu Ann

分类: cs.DC, cs.AR, cs.LG, cs.PF

发布日期: 2025-09-12

备注: 47 pages, 12 figures, technical report prepared at Fairleigh Dickinson University


💡 一句话要点

提出CRL-Pythia,一种面向多核系统的协同强化学习预取架构,提升IPC。

🎯 匹配领域: 支柱二:RL算法与架构 (RL & Architecture)

关键词: 多核系统 硬件预取 强化学习 协同学习 内存带宽

📋 核心要点

  1. 传统预取器在多核系统中面临冗余预取和性能下降的挑战,独立核心操作导致大量重复请求,浪费带宽。
  2. CRL-Pythia通过跨核心信息共享和协同决策,减少冗余请求,加速学习收敛,从而优化多核系统的预取性能。
  3. 实验表明,CRL-Pythia在带宽受限工作负载下,IPC提升约12%,并具有良好的鲁棒性和可扩展性。

📝 摘要(中文)

硬件预取对于弥补CPU速度和较慢内存访问之间的性能差距至关重要。随着多核架构的普及,传统的预取器面临严峻挑战。独立的核心操作会产生显著的冗余(高达20%的预取请求是重复的),导致不必要的内存总线流量和带宽浪费。此外,诸如Pythia等先进的预取器在从单核扩展到四核系统时,性能损失约为10%。为了解决这些问题,我们提出了一种基于协同强化学习的预取器CRL-Pythia,专门为多核系统设计。CRL-Pythia通过启用跨核心的信息共享和协同预取决策来解决这些问题,从而大大减少了冗余预取请求,并改善了跨核心的学习收敛。实验表明,在所有情况下,CRL-Pythia的性能均优于单个Pythia配置,对于带宽受限的工作负载,IPC(每周期指令数)提高了约12%,同时硬件开销适中。敏感性分析也验证了其鲁棒性和可扩展性,从而使CRL-Pythia成为当代多核系统的一种实用且高效的解决方案。

🔬 方法详解

问题定义:论文旨在解决多核系统中传统预取器效率低下的问题。由于每个核心独立运行,预取器会产生大量重复的预取请求,导致内存总线拥塞和带宽浪费。现有的先进预取器,如Pythia,在扩展到多核系统时性能会显著下降。

核心思路:论文的核心思路是利用协同强化学习,让多个核心的预取器共享信息并协同决策。通过让预取器了解其他核心的行为,可以避免重复的预取请求,并更有效地利用有限的内存带宽。这种协同的方式还可以加速强化学习的收敛速度,提高预取器的整体性能。

技术框架:CRL-Pythia的整体架构包括多个核心的预取器,每个预取器都基于强化学习算法。关键在于引入了跨核心的信息共享机制。每个预取器会定期与其他预取器交换信息,例如最近访问的内存地址、预取请求的历史记录等。这些信息被用于调整预取策略,避免重复请求。此外,CRL-Pythia还设计了一种协同决策机制,允许预取器在做出预取决策时考虑其他核心的需求。

关键创新:CRL-Pythia的关键创新在于将协同强化学习应用于多核系统的预取问题。传统的预取器都是独立运行的,无法感知其他核心的行为。CRL-Pythia通过跨核心的信息共享和协同决策,打破了这种孤立状态,实现了全局优化。这种协同的方式可以显著减少冗余预取请求,提高内存带宽的利用率。

关键设计:CRL-Pythia的具体实现细节包括:1) 使用强化学习算法(如Q-learning或SARSA)训练每个核心的预取器;2) 设计信息共享协议,确定哪些信息需要在核心之间共享,以及共享的频率;3) 实现协同决策机制,例如,让预取器在做出预取决策时,考虑其他核心的预取队列长度;4) 优化强化学习的奖励函数,使其能够反映协同预取的效益。

🖼️ 关键图片

fig_0
fig_1

📊 实验亮点

实验结果表明,CRL-Pythia在所有测试用例中均优于单核Pythia配置。对于带宽受限的工作负载,CRL-Pythia的IPC提升约12%。敏感性分析验证了CRL-Pythia的鲁棒性和可扩展性,证明其在不同配置和工作负载下都能保持良好的性能。这些结果表明,CRL-Pythia是一种实用且高效的多核系统预取解决方案。

🎯 应用场景

CRL-Pythia适用于各种多核处理器系统,尤其是在内存带宽受限的应用场景中,如高性能计算、服务器和嵌入式系统。通过减少冗余预取请求和提高内存带宽利用率,可以显著提升系统的整体性能和能效。该研究为未来多核处理器预取器的设计提供了新的思路,有助于开发更智能、更高效的内存管理系统。

📄 摘要(原文)

Hardware prefetching is critical to fill the performance gap between CPU speeds and slower memory accesses. With multicore architectures becoming commonplace, traditional prefetchers are severely challenged. Independent core operation creates significant redundancy (up to 20% of prefetch requests are duplicates), causing unnecessary memory bus traffic and wasted bandwidth. Furthermore, cutting-edge prefetchers such as Pythia suffer from about a 10% performance loss when scaling from a single-core to a four-core system. To solve these problems, we propose CRL-Pythia, a coordinated reinforcement learning based prefetcher specifically designed for multicore systems. In this work, CRL-Pythia addresses these issues by enabling cross-core sharing of information and cooperative prefetching decisions, which greatly reduces redundant prefetch requests and improves learning convergence across cores. Our experiments demonstrate that CRL-Pythia outperforms single Pythia configurations in all cases, with approximately 12% IPC (instructions per cycle) improvement for bandwidth-constrained workloads, while imposing moderate hardware overhead. Our sensitivity analyses also verify its robustness and scalability, thereby making CRL-Pythia a practical and efficient solution to contemporary multicore systems.