原生 arm64 程序不一定比 rosetta2 快

2022-03-19 09:11:18 +08:00
 MrKrabs

像 flac 这种优化 x86 好几年的软件,对 arm 基本是 0⃣️优化,运行 x86 版会比 arm64 版转码更快。 新的软件比如 dav1d 对 arm 的优化是比较好的,反正使用的时候要多试试。

3150 次点击
所在节点    macOS
7 条回复
jfdnet
2022-03-19 11:03:10 +08:00
这种说法不科学吧。只能说 M 芯片够强,rosetta2 做的还不错,即使转译性能损失有限。你要说原生的没优势那不可能。
MrKrabs
2022-03-19 11:40:43 +08:00
@jfdnet rosetta2 会把 sse 转 neon
akring
2022-03-19 15:30:28 +08:00
那么论点有了,论据呢?
MrKrabs
2022-03-19 18:25:53 +08:00
@akring 最简单的是用 x86 的 x265 看 version
./x265 --version
x265 [info]: HEVC encoder version 3.5
x265 [info]: build info [macOS][Intel][clang 13.1.6][64 bit] 8bit+10bit+12bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
patrickyoung
2022-03-19 19:41:44 +08:00
@MrKrabs 看 version 就瞎扯,来个 benchmark ,用数据说话。当然,跟对应软件的优化也确实有关系。
MrKrabs
2022-03-19 20:34:58 +08:00
@patrickyoung https://openbenchmarking.org/result/2203065-NE-2012250FI40
我都说了 rosetta2 快了,既然不信,那我发数据也没可信度对吧,自己转个 wav 就知道的东西😅
MrKrabs
2022-04-16 02:34:38 +08:00
看到 rar 有提供 arm64 版本了: https://www.win-rar.com/download.html
随便测试个小文件

file rar_*
rar_arm64: Mach-O 64-bit arm64 executable, flags:<NOUNDEFS|DYLDLINK|TWOLEVEL|BINDS_TO_WEAK|PIE>
rar_x86_64: Mach-O 64-bit x86_64 executable, flags:<NOUNDEFS|DYLDLINK|TWOLEVEL|BINDS_TO_WEAK|PIE>

time ./rar_arm64 t -p123456 -inul output/input.rar

________________________________________________________
Executed in 418.69 millis fish external
usr time 329.02 millis 54.00 micros 328.97 millis
sys time 7.66 millis 795.00 micros 6.87 millis

time ./rar_x86_64 t -p123456 -inul output/input.rar

________________________________________________________
Executed in 258.48 millis fish external
usr time 202.75 millis 0.06 millis 202.68 millis
sys time 10.48 millis 1.08 millis 9.39 millis

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

https://www.v2ex.com/t/841402

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

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

© 2021 V2EX