百科问答小站 logo
百科问答小站 font logo



ARM架构怎样设计才能在指令执行性能上超越X86架构? 第1页

  

user avatar   bei-ji-85 网友的相关建议: 
      

随便写点:

都什么年代了,还讨论精简指令集,x86架构内部也是精简指令集的,讨论这个没意义。

ARM的低功耗的一个原因是减少了硬件层面上对cache的一致性的保护,这样可以节省晶体管数量。很多人把晶体管数量当做低功耗的原因,其实是弄错了,晶体管数量少是结果,原因是ARM精简了很多设计(或者,叫偷工减料)

在这个链接里:en.wikipedia.org/wiki/M 有一个图:

里面的"Y"越多,意味着编写软件的时候需要的额外的指令就越多,这些指令就是要手工维护内存数据一致性的。

对于x86的32和64位架构来说,reorder的动作最少,所以在Intel和AMD的CPU上,编写操作系统编写驱动最容易,而对于ARM来说,需要大量的额外指令去刷新和同步cache,这对于软件来说非常不友好,也造成了额外的开销。

一个典型的例子就是,对于DMA操作来说,x86架构对于细节都做了隐藏,而ARM则需要额外指令通知硬件做刷新,否则数据就可能不一致,这对于IO操作来说非常不友好。

因为底层硬件设计就是这样的,除非把ARM推倒重来。网上的很多跑分软件并不实际做IO操作,单纯比较CPU的算力是没意义的,一个正常的软件,都需要给外设交换数据,这方面ARM对于x86而言,性能上没有优势。

单纯的比较单核的算力或者IPC毫无意义,普通用户不是拿CPU来搞科学计算的,绝大多数用户的应用都是有大量IO操作的,IO接口的设计才会直接影响到用户体验,道理就类似于:升级硬盘到SSD远比升级CPU效果更明显。

龙芯的单核同频率性能特别高,但实际呢?


user avatar   lulueh 网友的相关建议: 
      

我觉得,如果AMD intel来设计ARM处理器,性能追平自家的X86不是问题。

指令集不是问题,微架构设计能力才是。




  

相关话题

  如何评价高通宣布 2023 年推出下一代 Arm 处理器,对标苹果 M 系列,由苹果前员工负责开发? 
  兆芯的x86授权是怎么来的? 
  为什么目前x86的CPU的L1 Cache这么小? 
  为什么每款 ARM 电脑都需要专门为它编译的内核,而 x86 的可以通用? 
  8088/8086在响应中断保护断电的时候到底是将当前IP保存还是IP+1保存? 
  CPU有x86/ARM/MIPS等指令架构,那其他专用芯片有没有专用架构? 
  如何看待观点「华为没有核心技术,因为芯片用的是ARM(安谋)架构,一旦被停止授权,就会做不出芯片」? 
  自己动手组装主机时,为什么大部分人说 AMD使用过程比英特尔更难搞,不适合小白? 
  如果arm或者其他架构严重到了威胁x86架构的地位,intel和amd会将其开源并开放授权吗? 
  为什么目前x86的CPU的L1 Cache这么小? 

前一个讨论
Windows 内核和 Linux 内核谁更复杂?
下一个讨论
多核cpu多线程同时执行cmpxchg指令会发生什么?





© 2025-05-30 - tinynew.org. All Rights Reserved.
© 2025-05-30 - tinynew.org. 保留所有权利