首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >注册以注册比较

注册以注册比较
EN

Stack Overflow用户
提问于 2011-10-17 04:06:47
回答 1查看 90关注 0票数 0

我已经学习了CPU的组成和随机存取存储器的结构,但我不了解寄存器到寄存器的比较操作。

“为什么寄存器到寄存器的比较操作通常比RAM中两个数据条目上的等效操作快?”

EN

回答 1

Stack Overflow用户

发布于 2011-10-17 04:14:26

RAM访问,当它在缓存之外时,是非常慢的。访问DDR3模块上的数据要比访问寄存器(甚至是L1缓存)慢几百倍。如今的台式机(或服务器,或笔记本电脑)处理器会将大部分时间浪费在访问(L1)缓存之外的数据上,例如在DDR3内存模块上。

正确地说:访问一个寄存器或L1缓存数据最多需要几个周期(因此,在3 3GHz机器上,这通常意味着一纳秒)。访问DDR3内存模块上的数据大约需要200或300纳秒。在这段时间里,你的处理器可以执行上百条机器指令。

这就是为什么数据局部性越来越重要的原因。它甚至对我们正在编写的代码也有影响:扫描链表可能比扫描数组慢得多。

细节是困难的:在当前的处理器上,很难预测一个小例程的最坏情况执行时间。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7786947

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档