38、面向Cell多核处理器不规则引用的自适应行大小缓存方案

Cell多核处理器不规则引用自适应缓存方案

面向Cell多核处理器不规则引用的自适应行大小缓存方案

1. 背景与动机

在缓存设计中,传统的4路组相联缓存存在一定局限性,例如ESC的自适应策略仅适用于并行循环,对循环迭代间的变化不敏感,且存储开销大。为此,提出一种自适应缓存行大小策略及相应的自适应行大小缓存(ALSC)设计,以根据不规则引用的特性自适应调整缓存行大小。

2. 自适应软件缓存行算法

该算法基于先前工作,包含四个步骤:
1. 初始化缓存行 :为简化,引入128B和256B两种缓存行。
2. 划分地址 :应用于每个迭代范围,采用动态地址收集方案,遇到首个组冲突时停止收集。
- 示例代码如下:

for(k=0; k<ub; k++) 
  sum += a[k]*p[colidx[k]]; 
/*step1: initialization*/ 
lb_tmp=0; 
Longln=256; //size of long line 
Shortln=128; //size of short line 
do{ 
  /*step2: the addresses dividing process*/ 
  ub_tmp = collect_dynamic(lb_tmp, ub_tmp); 
  for(k=lb_tmp; k<ub_tmp; k++) 
    ea[k] = &p[colidx[k]]; 
  /*align the addresses collected to a 256B boundary*/ 
  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值