ARM 比 X86 的局限是什么

2023-09-05 11:09:32 +08:00
 Salomea

当服务器用,很多人推荐 x86 ,那 arm 有啥缺点?我自己用的闲鱼买的黑豹 x2 ,刷的 armbian ,个人感觉 arm 机子的几个优点,精致小巧,省电,不过可刷的固件有限,但是限制 arm64 也有很多软件适配下来了

6262 次点击
所在节点    问与答
63 条回复
Jirajine
2023-09-05 18:37:40 +08:00
就是没有硬件可用。不要说软件适配,开发团队都买不到实际可用的硬件。arm 的服务器一直处于 experimental 阶段,只有少数云厂商、小型开发板,以及国内为了政治指标硬上的电子垃圾等少数产品能用到 arm 的服务器。
bequt
2023-09-05 19:49:49 +08:00
请问 arm 能跑 python 吗?最近也考虑买一个 arm 。docker 能跑也行
ivan_wl
2023-09-05 20:26:52 +08:00
@longbo666 #29 SIMD 我不懂,这个内存模型的说法就是扯淡,GPT 还是一如既往的扶不上墙
bt7vip
2023-09-05 21:02:44 +08:00
arm 使用的是复杂指令集,X86 使用的精简指令集,精简是把功能做成黑盒,你开发直接调用,精简是给你一块地自己想种啥种啥,但是开发难度大,相比精简指令集,复杂指令集的效率更高,定制自由度高,但是开发难度大。arm 也在做复杂指令集,但是生态实在是不行。
bt7vip
2023-09-05 21:03:38 +08:00
精简是给你一块地自己想种啥种啥》》复杂是给你一块地自己想种啥种啥
nevin47
2023-09-05 21:06:40 +08:00
@ljrdxs #39 和官场没有半毛钱关系。相比于 X86 ,基于 ARM 的芯片全流程从设计到制造都可以做到可控,未来基于 RSIC-V 可控程度可以做到更高。
nevin47
2023-09-05 21:07:32 +08:00
@bequt 你这个问题就好像是问:现在的新能源汽车能左转吗😁
Donahue
2023-09-05 21:11:47 +08:00
@bt7vip 跟指令集有半毛钱关系,你写 c/cpp/python/js 需要写到跟指令集相关的东西么,这写都是写编译器的人才需要了解的
firstlove
2023-09-05 21:12:17 +08:00
这个 thread 的回复基本都是来搞笑的...
Donahue
2023-09-05 21:13:56 +08:00
@bequt x86 能跑的语言 arm 基本都能(应该是所有主流语言, 例如 c, c++, python, java, js, ruby, rust, golang), c#不太清楚能不能,我估计 c#也可以。
haierspi
2023-09-05 21:35:35 +08:00
我能感知的区别就是软件生态
Inn0Vat10n
2023-09-05 21:38:42 +08:00
某些回复给我看傻了,似乎都没上过大学计算机专业课。。。。
qweruiop
2023-09-05 22:45:38 +08:00
很多计算的库在 arm 上比 x86 慢了几倍。。。
gtx990
2023-09-05 22:57:45 +08:00
现代的 cpu 前端第一件事就是把指令译码成微指令
指令长什么样根本不重要
同一个架构甚至可以有多种前端
比如原本 amd 还准备发布 arm 版的 zen ,也就是 k12
Adelell
2023-09-05 23:22:04 +08:00
提醒一下 Apple silicon m1 m2 就是 arm 架构。
cookii
2023-09-06 00:15:26 +08:00
@Donahue 能跑是一回事,能稳定高性能的跑是另一回事
jameskongawork
2023-09-06 00:20:25 +08:00
IO 操作,或者说这是 RISC 必有的劣势
另外因为 X86 实际上只掌握在两家手里面(AMD INTEL)所以基本上在预取,CACHE 还有 DMA 上面都会考虑的比较周全。
ARM 的基本上则是根据具体的芯片实现厂商和应用场景去考虑,大量的消费 ARM 片子都是多媒体或者是通信为主,所以基本上 IO 吞吐都不会太强。
xarthur
2023-09-06 00:22:58 +08:00
差距是市占率不够高,生态还不如 X86 ,不过感谢 Apple 现在支持 ARM 的软件越来越多了,现代芯片行业最值钱的就是生态,而指令集只是生态的边界而已。
这也是为啥 intel 到现在也放不下已经成包袱的 X86 了。
jameskongawork
2023-09-06 00:24:47 +08:00
@jameskongawork 另外多说一句,关于硬盘和外设链接,目前所谓的 arm 消费片子当服务器用的所谓 m2 或者是 sata 几乎都是通过内部 IP 转 USB 再转 AMBA 实现的,这是成本使然,所以必然还有的是延时和带宽的限制
jameskongawork
2023-09-06 00:32:06 +08:00
@jameskongawork 另外多线程多核操作估计也差目前主流 x86 很远,因为内部的 noc 往往都是 flexnet 这样的设计加个 CCI 。所以这样的话核间的 exchange 代价就比较高,如果做比较强 corelated 的多核操作性能就比不过。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/971009

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX