首页 文章

就CPU处理的指令而言,时钟速率决定了什么?

提问于
浏览
0

我对CPU处理指令和石英晶体振荡频率之间的理解似乎存在差距 . CPU的频率究竟是如何影响程序运行的速度的?时钟速率与给定时间内处理的指令数量之间是否存在关系?

示例: mov R0, #1 . 假设这个指令需要一个时钟周期,那么这需要对晶体进行一次曝光,还是不能像那样工作?

2 回答

  • 2

    时钟频率对处理器的速度估计非常差 . 在旧的(2000年前?)天,时钟频率是一个非常好的速度估计 . 更高的时钟频率总是意味着更好的性然而,这些日子并非如此 . 你可以拥有一个需要20个时钟周期才能完成任何工作的4GHz处理器,并且它会比在一个时钟周期内执行所有内容的1GHz处理器慢得多 . 这条指令:时钟周期比率在过去几年变得更加复杂 . 现在,需要考虑L1和L2缓存 . 如果存在高速缓存未命中,则通常需要额外的时钟周期或两个...然后存在无序执行和优化机制,这些机制可能导致除法指令从小于1(有点)到10个时钟周期 . 还有超线程,这意味着当另一个线程正在使用一个组件时,另一个线程将不得不等待额外的时钟周期...我可以继续这样做 .

    基本上,不要 . 除非您正在处理简单的嵌入式(即非ARM或x86)架构,否则时钟频率与指令/秒的关系不大 . 当然,两个等效的处理器,其中一个使用更高的时钟,理论上应该产生更高的指令/秒,但任何人都猜测每秒多少指令 .

  • 2

    它没有,它在很大程度上取决于具体的处理器设计 . 粗略地说,在70年代末和80年代,微处理器需要多个时钟周期来执行指令 . RISC处理器在90年代处于鼎盛时期,他们的重点确实是在单个周期中使用指令,在必要时简化指令集 . 在2000年代,处理器设计大部分取代了具有多个执行核心的处理器设计,允许每个时钟周期停止多条指令 .

    时钟电路也有类似的发展 . 现代处理器使用相对低频的振荡器,并使用片上乘法器来达到千兆赫范围 . 并动态改变频率 .

相关问题