关于 Apple M1 的群众意见每日汇总 [码农方向][2020.11.19]

2020-11-19 09:20:25 +08:00
 zckevin

通过 CrossOver 运行 Windows 应用

We’re making it official: @codeweavers CrossOver/Wine runs 32- and 64-bit Windows apps/games on Apple Silicon Macs! And it works today!

Big thanks to the Rosetta folks at Apple and everyone at CodeWeavers for their hard work on this.

https://twitter.com/stroughtonsmith/status/1329207532154445825

https://www.codeweavers.com/blog/jwhite/2020/11/18/okay-im-on-the-bandwagon-apple-silicon-is-officially-cool

Golang 在 Apple M1 下的使用笔记,来自 Filippo Valsorda (Go Team Security Lead)

M1 first impressions 24h in:

《 Developing on Apple Silicon 》 https://docs.google.com/document/d/1iWUstb66v66tTVxQWNMZ1BehgNzEmykzqDCUp5l8ip8/edit

For developing in Go on Apple Silicon, there's two main issues to be aware of:

IDA 在 M1 Mac 上运行良好,来自 Checkra1n 团队成员 @qwertyoruiopz

M1 is actually pretty good, can’t believe the base air can handle ida like this https://twitter.com/qwertyoruiopz/status/1329152951294844932

so far so good. there’s some issues overall (eg brew currently doesn’t work well on it), but these will be sorted out and Rosetta 2 is just magic.

i just copied over my install from mac pro, so this is under rosetta 2. i’ll check later if there’s anything from hexrays in that regard

Accelerating TensorFlow Performance on Mac

https://blog.tensorflow.org/2020/11/accelerating-tensorflow-performance-on-mac.html

Google releases Apple Silicon-optimized version of Chrome for Mac

https://9to5google.com/2020/11/18/chrome-mac-apple-silicon/

If you want to use Chrome on new Macs with Apple M1 chips, head to https://google.com/chrome/ and download the Apple Silicon version we released in M87 today! https://twitter.com/elvin_not_11/status/1328816326542905345

Does it ARM? A list of reported app support for Apple Silicon

https://doesitarm.com

https://github.com/ThatGuySam/doesitarm

M1 Mac 合盖后依然保持运行,来自 Yachen Liu

写了非常简单的一小段代码验证了一下早上的观点,确认即使在电池供电且合盖的状态下,M1 设备 CPU 依然会定期的保持活跃,和 iDevice 一样,而且这个活跃不是系统特权。

第二张图是旧的 MBA,合盖后几分钟内依然活跃,然后就彻底休眠了。 (代码中 counter 忘 ++ 了,忽略…) https://twitter.com/Blankwonder/status/1328952885841960960

关于 Rosetta 2,来自 Hector Martin

Also, remember that Apple cheated with their control over the CPU for Rosetta 2. Getting R2 x86 performance on any other ARM is impossible, due to the memory model mismatch. You have to massively slow down all loads and stores.

So Apple straight up implemented the x86 consistency model on their cores. That's the kind of high-impact detail that makes or breaks emulation performance for a different arch. Did they do this for any other x86-isms? Nobody knows so far.

https://twitter.com/marcan42/status/1328940797174099970

Also, everyone please stop eating up Apple's marketing bullshit and calling Rosetta 2 an "Ahead-of-Time Translator, Not An Emulator" as if it is some Fundamental Difference that Makes It Fast.

It's a JIT emulator, with a cache, with opportunistic partial ahead of time warming.

https://twitter.com/marcan42/status/1328956667548082177

Rosetta 2 runs everything under the correct memory model

“Excited” to hear about all the data races now that people will actually execute all their code under ARMs memory model

woah wait huh i never considered whether rosetta 2 does the necessary synchronization of x86

https://twitter.com/gsnedders/status/1328710885028884481

7847 次点击
所在节点    Apple
34 条回复
zckevin
2020-11-19 09:29:10 +08:00
## ARM x86 关于 Memory model 的区别,来自 Bruce Dawson (Google Chrome Team)

mov register-> a
mov register-> b

On x86/x64 the store to "b" is guaranteed to not be visible to other processors before the store to "a". On ARM that is not guaranteed.

Many benign x86/x64 data races will becomes real bugs on ARM, and it appears many programmers don't know this

The emulator _must_ emulate the x86/x64 memory model. It is as important as properly emulating the CPU status flags and arithmetic instructions. So, yes. If Rosetta didn't emulate the memory model it would not be an x86/x64 emulator.
warminer
2020-11-19 09:31:40 +08:00
让人兴奋的硬件,大家都在玩,玩着玩着兼容性就好起来了
zckevin
2020-11-19 09:50:42 +08:00
## Native FP16 on Apple M1, 来自 Steve Canon (Apple Swift team)

A couple random fun numerics things to play with on M1 macs:

- native half-precision arithmetic
- ARMv8.3 complex arithmetic SIMD instructions

https://twitter.com/stephentyrone/status/1328861121382666240
studyro
2020-11-19 09:50:57 +08:00
感谢整理,最后两条关于 Rosetta 2 的信息之前没注意到
love
2020-11-19 10:17:26 +08:00
苹果都说需要 2 年生态跟上,有些人现在就买也太那个有信仰了。。。到时更新机都出来了
otakustay
2020-11-19 10:23:31 +08:00
@love 有的不是信仰,是钱
Gandum
2020-11-19 10:34:17 +08:00
Android Studio 或者其他安卓模拟器有没有消息?
安卓模拟在 M1 芯片的 MacBook 上效率也应该会提高很多,只不过需要原生支持,不知道 Parallels Desktop 会不会是第一个搞出来的
zjuster
2020-11-19 10:34:49 +08:00
@otakustay 对于资深互联网从业人员来说,这次的新电脑真不贵.. 四分之一月工资?
otakustay
2020-11-19 10:58:00 +08:00
@zjuster 夸张了,税后没这么多
Richardyyz
2020-11-19 10:58:17 +08:00
@love 玩票性质来说,我觉得比买一张 3080 值多了。
Xillusion
2020-11-19 11:00:07 +08:00
@Gandum 是的 感觉 APP 端开发,以后可能都是 mac 了
InternetExplorer
2020-11-19 11:01:49 +08:00
@Gandum #7 以后 MacBook 恐怕会是最佳安卓模拟机
xbiyy
2020-11-19 11:14:52 +08:00
大家现在都在看兼容性和性能

我猜测,后续应该会出,5G 模块的版本 mac,类似 ipad

能够保持一直在线状态
vvard3n
2020-11-19 11:14:52 +08:00
vvard3n
2020-11-19 11:15:43 +08:00
@vvard3n oh 看漏了。。。楼主有发这个网站了
Lonely
2020-11-19 11:17:54 +08:00
@love 你不买,他不买,都在观望的话,这生态怎么跟上?
dadupi
2020-11-19 11:32:19 +08:00
目前是不是还不能支持 vmware 或者 pd 虚拟机装 win10 ?有 win 需求(网银 key )的话,需要等等么?
zckevin
2020-11-19 11:40:52 +08:00
@dadupi
@Gandum

并未持有设备,不清楚。
yyfearth
2020-11-19 12:10:45 +08:00
@dadupi 估计没戏 就算是虚拟机 估计不是 x86 虚拟机
而且就算是 x86 虚拟机 硬件驱动估计是个问题
feather12315
2020-11-19 12:21:08 +08:00
@InternetExplorer #12
@Gandum #7
CPU monkey 上显示 m1 不支持硬件辅助虚拟化。从原理上讲,性能跟 x86 芯片没啥差别,都是二进制翻译

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

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

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

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

© 2021 V2EX