...
【24h】

Register Allocation for Banked Register File

机译:银行注册文件的注册分配

获取原文
获取原文并翻译 | 示例
   

获取外文期刊封面封底 >>

       

摘要

A banked register file is a register file partitioned into banks. A register in a banked register file is addressed with the register number in conjunction with the active bank number. A banked register file may be employed to reduce the number of bits for register operands in the instruction encoding at the cost of bank changes and inter-bank data transfers. Although a banked register file is introduced to provide sufficient registers and reduce memory traffic, it may on the other hand inflate code by unwanted bank changes and excessive inter-bank data movements. In this context, code quality heavily depends on the register allocator that decides the location of each variable. This paper addresses a heuristic approach to register allocation for exploiting two register banks. It performs global register allocation with the primary bank registers, while reducing the register pressure by doing local register allocation with the secondary bank registers. Experimental results show that the proposed register allocator eliminates a significant amount of memory traffic while achieving smaller code size compared to an allocator that utilizes the primary bank only.
机译:存储区寄存器文件是划分为存储区的寄存器文件。存储区寄存器文件中的寄存器使用寄存器编号和有效存储区编号进行寻址。可以使用存储体寄存器堆来减少指令编码中寄存器操作数的位数,但要以存储体变化和存储体间数据传输为代价。尽管引入了存储区寄存器文件来提供足够的寄存器并减少内存流量,但另一方面,由于不需要的存储区更改和过多的存储区间数据移动,它可能会使代码膨胀。在这种情况下,代码质量在很大程度上取决于决定每个变量位置的寄存器分配器。本文提出了一种启发式方法来利用两个寄存器组来进行寄存器分配。它通过主要存储体寄存器执行全局寄存器分配,同时通过使用辅助存储体寄存器进行本地寄存器分配来降低寄存器压力。实验结果表明,与仅使用主存储体的分配器相比,所提出的寄存器分配器消除了大量内存流量,同时实现了较小的代码大小。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号