×
嵌入式 > 嵌入式开发 > 详情

SEGGER为Apple M1芯片发布优化的Embedded Studio

发布时间:2021-03-26 发布时间:
|

SEGGER已为新的Apple M1芯片发布了其Embedded Studio的版本。通过本地编译基于Arm的M1芯片,而不是从Intel x86-64进行翻译,应用程序可以执行得更快。


M1是苹果公司第一个专门为Mac设计的基于Arm的系统,虽然基于ARM的M1可以使用Apple的Rosetta 2转换器转换为基于Intel x86的CPU执行应用程序,但是专门为M1内核构建的应用程序执行速度更快,功耗也更低。


为了充分利用本机编译应用程序的速度和性能潜力,SEGGER创建了适用于M1的Embedded Studio版本。Embedded Studio是SEGGER的跨平台集成开发环境(IDE),用于ARM / Cortex和RISC-V体系结构。现在有两个macOS软件包可供下载-一个用于Intel x86-64,一个用于Apple M1。


SEGGER的常务董事Ivo Geilenbrügge说:“这是第一个针对M1优化的商业嵌入式IDE系统,我们的比较测试的性能结果表明这是值得的。”


在SEGGER自己的基准测试中,该公司表示,本地编译的代码运行速度几乎是运行翻译后代码的两倍。产品经理Johannes Lask在其博客中强调指出,与大多数使用x86-64指令集体系结构的CPU相比,M1内核使用AArch64 / ARMv8-A指令集。 x86-64是x86的扩展,32位x86应用程序可以在x86-64上本地执行,而Arm代码则完全不同。


为了保持与现有应用程序的兼容性,Apple推出了Rosetta 2,该模拟器可转换x86-64指令以在M1上运行。转换是一次性事件,通常在安装时或在应用程序首次启动时进行。之后,可以像在其他任何计算机上一样本机执行该应用程序。


Lask说:“编译要花一些时间,编译后的代码不如原始代码好或效率高。为了获得最佳结果,Apple鼓励开发人员为M1专门构建应用程序。本地编译的源代码产生的指令执行量更少或更有效的指令序列。这样的本机优化代码需要更少的执行时间,并且可以减少功耗。”


由于该公司拥有两个版本的Embedded Studio,一个版本同时用于Arm和Intel芯片,因此它对M1的性能进行了比较,并具有特定的软件开发任务。它是通过在两台MacBooks上安装Embedded Studio来实现的。在配备2.7 GHz Intel i7的2016 MacBook Pro上,安装了x86-64版本。在装有Apple M1的新款MacBook Pro上,两个版本均已安装。


然后,它建立了一个包含约570 C 源文件的SEGGER Flasher固件项目,该项目产生了740kByte的应用程序映像。结果如下:


MacBook Pro,Intel i7,x86-64在30秒内完成了任务。

MacBook Pro,M1,x86-64(转换)在31秒内完成。

MacBook Pro,M1,ARM(本机)在17秒内完成。


SEGGER的测试,用于比较Apple M1芯片上的本地编译代码和翻译后的代码(来源:SEGGER)


通过此比较,SEGGER的目的是说明本机编译代码与翻译后代码的优点,以及因此为M1专门构建一个版本的Embedded Studio的原因。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
Diodes 推出单闸逻辑设备.助力ADAS 等车用产品应用