宿迁波仔博客

内存访问优化策略及内存错误

内存访问优化策略

假设一个SDRAM有四个Bank,每个Bank各有一个Row Buffer。Activate指令会将一行数据放入相应Bank的Row Buffer中,而Precharge、Precharge All指令会关闭Row Buffer并写回数据。如果某Bank的Row Buffer是关闭的,我们称它为空闲 (Idle) 的。SDRAM的访问存在三种情况:

1,Page Hit。当前访问的Row,正好保存在相应bank的row buffer里。此时,不需要激活Row,直接发读写指令和Column地址,就可以进行列读写,这就是Back to Back读写。此情况,读写延时最小。

2,Page Empty。当前访问的Row所在的bank中,row buffer关闭。此时,需要先激活Row,再发读写指令和Column地址。此情况,读写延时中等。

3,Page Miss。当前访问的Row所在的bank中,row buffer打开,但存的是另一个Row的数据。此时,必须先发送Precharge或Precharge All指令关闭row buffer,再激活Row,最后发读写指令和Column地址。此情况,读写延时最大。

Close Page Policy

 尽量保持行缓冲关闭的策略。对当前行访问结束后立刻进行Precharge操作,不论后面是否还要访问该行。Close Page Policy中只发生一种情况:Page Empty(即行缓冲为空,需要先激活行)。

Close Page Policy的读写延时适中并且恒定,与访问请求的时间空间局部性无关,具有良好的可预测性 (Predictabilility) ,适用于实时性要求较高的应用场合。

Close Page Policy的硬件实现比较简洁,因为每次读写都是一个行激活、列读写、预充电的过程。

 Open Page Policy

尽量保持行缓冲打开的策略。除非需要访问当前同一bank中的其它行,则不进行Precharge操作。Open Page Policy中常会发生两种情况:Page Hit(即再次访问Row Buffer中的数据)、Page Miss (Row Buffer中的行不是要访问的行)。

如果访问请求的时间空间局部性很好,则发生Page Hit的概率远大于发生Page Miss的概率,应用Open Page Policy可以大大减少读写延时;如果访问请求的时间空间分部很分散,则发生Page Miss的概率远大于发生Page Hit,应用Open Page Policy会造成较大的读写延时。

 Adaptive Page Policy

动态的行缓冲策略。根据运行中前一段时间的访问历史动态决定SDRAM行缓冲策略的技术;

若当前策略偏向于Open Page,则对下列情况进行双向计数:关闭当前行以打开新行、访问当前行,如果前者接二连三地出现并超过阈值,则更换策略;

若当前策略偏向于Close Page,则对下列情况进行双向计数:打开新行、打开上一次操作中被关闭的行,如果后者接二连三地出现并超过阈值,则更换策略。

内存错误

按错误来源分,内存错误分为硬错误和软错误:

Hard Error:硬错误,指受到外界环境中强大的能量如雷击或静电的瞬间放电而造成的系统元件永久性损坏,可以通过硬件故障切换(failover)功能来恢复,保证系统的持续运行。

Soft Error:软错误,指半导体元件受不明带电粒子影响,如果正好撞击到内存中的储存单元,只要能量足够就会导致位元翻转,造成数据错误。软错误是随机的,对于可纠正的软错误,可以通过ECC等内存保护技术来修复。对于不可纠正的错误,可以通过联合OS/firmware进行的错误隔离以及错误恢复。当软错误(可修复/不可修复)累积到一定数量,可通过阈值(Threshold)和PFA算法来提前通知用户进行硬件更换,而不致错误累积到系统突然宕机 。

按错误类型分,内存错误可分为可纠正错误和不可纠正错误:

Correctable Error:可纠正错误,指可利用CRC、ECC等硬件机制来纠正的错误。

Uncorrectable Error:不可纠正错误,指无法利用ECC等硬件机制来纠正的错误,需要通过备、镜像和热切换等将损坏的数据进行隔离。有些不可纠正的错误可能造成系统宕机。

另外,内存错误还可分为单比特错误(SBE - Single Bit Error),多比特错误(DBE – Double Bit Error)和地址奇偶检验错误(AP - Address Parity)。

推荐阅读:

常见硬件术语之内存术语解释

内存概述及内存的分类

关于内存模组

内存的其他种类

服务器内存类型(UDIMM、RDIMM和LRDIMM)

2013-11-04 | 发布:宿迁波仔博客 | 分类:科技资讯 | 评论:10

留言列表:

  • 客天下婚嫁影视基地 发布于 2013-11-07 11:30:21  回复
  • 感谢博主分享经验
  • 游客 发布于 2013-11-05 20:49:03  回复
  • 有点像看天书了。
    • 宿迁波仔博客 发布于 2013-11-05 22:14:48  回复
    • 但是博主对鞋子很了解啊
  • 张海华 发布于 2013-11-05 12:57:34  回复
  • 呵呵,再大的内存也应该优化
    • 宿迁波仔博客 发布于 2013-11-05 13:54:18  回复
    • 嗯,是的。博主的论坛是不是之前换过域名啊?论坛备案要提交什么特殊材料吗?
  • 免费部落 发布于 2013-11-05 11:35:17  回复
  • 现在动不动就16G的内存,还要优化吗?
    • 宿迁波仔博客 发布于 2013-11-05 11:48:20  回复
    • 内存优化和内存大小不是一回事哦
  • 2014最新电影 发布于 2013-11-05 11:06:42  回复
  • 我笔记本内存2G太小了。买个内存条,估计还要卸电脑
    • 宿迁波仔博客 发布于 2013-11-05 11:47:38  回复
    • 嗯,加内存条是要拆了
  • 鹏达锁业 发布于 2013-11-05 11:01:19  回复
  • 根据运行中前一段时间的访问历史动态决定SDRAM行缓冲策略的技术;
  • 刘兆华 发布于 2013-11-05 10:48:20  回复
  • 博客的广告赚钱吗
    • 2014最新电影 发布于 2013-11-05 11:22:26  回复
    • 一般做大才能赚钱
      • 宿迁波仔博客 发布于 2013-11-05 11:46:57  回复
      • 嗯,是的。而且博客很难能赚钱。不过你的电影站倒是很不错哦 <img src="http://img.t.sinajs.cn/t35/style/images/common/face/ext/normal/36/gza_org.gif" alt="[鼓掌]" title="[鼓掌]" class="ds-smiley" />
    • 宿迁波仔博客 发布于 2013-11-05 11:46:09  回复
    • 不赚钱,就测试下。十月18安装的,到现在才8块钱 <img src="http://img.t.sinajs.cn/t35/style/images/common/face/ext/normal/0b/tootha_org.gif" alt="[嘻嘻]" title="[嘻嘻]" class="ds-smiley" />
  • 游客 发布于 2013-11-05 10:43:45  回复
  • 技术性好强
  • 游客 发布于 2013-11-05 08:23:28  回复
  • 内存优化很有必要,但是不是太会搞 我有台服务器是48G内存
    • 宿迁波仔博客 发布于 2013-11-05 09:20:44  回复
    • 你那边有服务器?个人的吗? <img src="http://img.t.sinajs.cn/t35/style/images/common/face/ext/normal/f4/cj_org.gif" alt="[吃惊]" title="[吃惊]" class="ds-smiley" />
  • 奋斗的海棠果 发布于 2013-11-04 23:09:32  回复
  • 不错 好内容 这样的话 会让网站变得飞快
    • 宿迁波仔博客 发布于 2013-11-05 09:20:09  回复
    • 做硬件的博客比较少吧。

发表留言: