首页> 外文会议>International conference on computer design >Pool directory: Efficient coherence tracking with dynamic directory allocation in many-core systems
【24h】

Pool directory: Efficient coherence tracking with dynamic directory allocation in many-core systems

机译:池目录:在许多核心系统中使用动态目录分配进行高效的相干性跟踪

获取原文

摘要

The coherence directory in a chip-multiprocessor keeps track of each memory block inside the cache hierarchy and plays a significant role in offering a scalable shared memory abstraction in many-core systems. Multi-threaded applications typically require two types of directory entries, namely, limited pointer entries tracking a few sharers of a block and bitvector entries tracking larger number of sharers for widely shared blocks. Recent proposals aiming to optimize the average number of bits per directory entry have organized the directory as either a static mix of these two types of entries or a collection of relatively short bitvector entries that can encode either a limited number of sharer pointers or a larger number of sharers hierarchically. In this paper, we present a directory organization that facilitates allocation of two different types of directory entries dynamically. Our design maintains a pool of limited pointer entries, where each entry can also double as a segment directory entry encoding the sharers in a cluster of cores. Each tag in the primary sparse directory array has a pointer that can either represent a sharer or point to an entry in the pool. When multiple segment directory entries are needed to encode all the sharers of a block, our pool management protocol guarantees that all these entries are allocated contiguously so that maintaining a pointer to the head entry is enough. Such a design offers significant flexibility in sharer encoding and allows us to independently size the sparse directory array and the pool. Detailed simulation results show that our proposal incorporated in a 128-core system running multi-threaded applications drawn from scientific, general-purpose, and commercial computing domains can offer, on average, 5% improvement in performance and 20% savings in interconnect traffic compared to the state-of-the-art scalable coherence directory (SCD) proposal when using a 1/16 × sparse directory.
机译:在芯片多处理器的相关目录跟踪缓存层次结构内的每个存储块和发挥在多内核系统提供一个可扩展的共享存储抽象一个显著的作用。多线程应用程序通常需要两种类型的目录条目,即,限定指针的条目的跟踪块的几个共有者,位向量的条目跟踪较大共享者为广泛共享块的数目。近期目标是优化每个目录项的平均比特数的提案已经组织目录,这两类项目的一个静态混合或相对较短位向量条目的集合,它可以编码共享者指针无论是数量有限的或更大的数字共享者的层次。在本文中,我们提出动态利于两种不同类型的目录条目的分配的目录组织。我们的设计保持有限的指针条目池,其中每个条目也可以理解为在核心集群编码共享者的段目录条目。主稀疏目录阵列中的每个标签都有一个指针可以表示共享者或点到池中的一个条目。当需要多段目录条目编码块的所有共享者,我们的泳池管理协议保证了所有这些条目被分配连续以便维持一个指向头部条目是不够的。这样的设计在提供共享资源编码显著的灵活性,使我们能够独立大小稀疏目录阵列和游泳池。详细的仿真结果表明,我们的建议在运行多线程应用程序的科学性,通用绘制的128核心系统结合,与商业计算领域可以提供平均,在互连流量节省性能提高5%和20%相比,到状态的最先进的可扩展一致性目录(SCD)建议在使用1/16×稀疏目录。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号