2024CTIS-文章详情页顶部

Swift并不像苹果说的那么快:第一次基准测试

性能是苹果声称新编程语言Swift将带给OS X和iOS开发人员的好处之一。然而,由独立开发者执行的第一次实验和基准测试显示,Swift在某些场景的性能并不如人意。

 

性能是苹果声称新编程语言Swift将带给OS X和iOS开发人员的好处之一。然而,由独立开发者执行的第一次实验和基准测试显示,Swift在某些场景的性能并不如人意。

开发人员Jukka Suomela在Stack Overflow发表了一篇帖子说明他的发现。当用Swift实现一个算法时,他注意到其性能非常差。深入分析后,Jukka最终发现代码的主要瓶颈来自一个数组排序这样的简单任务。

事实上,Swift对100万个随机整数的数组进行排序,需要耗时6秒,而C++只用了0.06秒,Python为0.6秒。这些测试使用的是-O3编译优化级别,这是Xcode发布构建时常用的级别。Jukka说,如果禁用所有编译优化,即对应于Xcode调试构建的-O0,上述测试用了88秒。

Stack Overflow上回复该帖的其他开发人员证实了Jukka的发现。开发人员sjeohp用Swift实现快速排序算法时,发现如果不启用编译优化(-Onone)会比C慢1000倍。另一方面,他发现当强制积极的编译优化(-Ofast)时,Swift比C稍快。Stack Overflow的另一个帖子描述了图像处理测试,也强调了类似的研究结果。

根据LLVM文档,积极优化忽略了严谨的标准规范。-Ofast启用了所有-O3优化并开启了-ffast-math,后者放宽了IEEE或ISO的数学函数规范,可能导致那些应该具有规范保证的程序产生不正确的输出。此外,-Ofast禁用了整型溢出和数组下标越界的检查,因此降低了Swift的安全特性。

Jukka进行了深入分析,他在编译器对另一个测试所生成的汇编代码中,发现一个数组的简单循环产生了大量的内存管理调用(保留和释放),而这是完全没有必要的。这个测试没有涉及数学,因此主要的性能瓶颈似乎来自这些无用的调用。

数名开发人员指出Swift仍然处于Beta状态,这可能是Swift当前这种行为的最好解释。具体来说,文中提到的毫无必要的释放/保留调用暗示了ARC优化存在一些Bug,可能不需要积极优化就可以修复。

因为该语言仍处于Beta状态,苹果不会允许开发者提交Swift开发的应用进行审查。Xcode的最终版本预计在今年秋天发布。(infoq/作者 Sergio De Simone ,译者 梅雪松 

查看英文原文:Swift Might Not Be As Fast As Apple Claims It To Be: First Benchmarks

本文系作者 infoq 授权钛媒体发表,并经钛媒体编辑,转载请注明出处、作者和本文链接
本内容来源于钛媒体钛度号,文章内容仅供参考、交流、学习,不构成投资建议。
想和千万钛媒体用户分享你的新奇观点和发现,点击这里投稿 。创业或融资寻求报道,点击这里

敬原创,有钛度,得赞赏

赞赏支持
发表评论
0 / 300

根据《网络安全法》实名制要求,请绑定手机号后发表评论

登录后输入评论内容

快报

更多

2024-04-26 23:03

大商所、郑商所夜盘收盘,烧碱跌近3%

2024-04-26 23:00

美股半导体股集体走强:英伟达涨超5%,博通涨超4%

2024-04-26 22:43

宝马计划对沈阳生产基地增加投资200亿元

2024-04-26 22:42

现货黄金短线下挫8美元

2024-04-26 22:40

美元兑日元站上157关口,为1990年5月来首次

2024-04-26 22:35

光峰科技:2024年第一季归母净利润4454.33万元,同比大幅增长226.21%

2024-04-26 22:31

花旗现预计美联储将于7月降息

2024-04-26 22:30

昆明优化公积金住房套数认定标准:不再将个人住房商贷记录纳入认定范围

2024-04-26 22:25

中国船舶:第一季度归母净利润4.01亿元,同比增长821.12%

2024-04-26 22:23

纳斯达克指数涨幅扩大至2%,科技巨头全线上涨

2024-04-26 22:18

谷歌大涨超11%,再创历史新高,总市值突破2万亿美元

2024-04-26 22:11

研究显示到2025年底全球利率升幅只会砍一半,重塑投资格局

2024-04-26 22:09

台达电加码印度投资,预计增资6200万美元

2024-04-26 22:08

标普500指数涨1%至盘中高点

2024-04-26 22:07

上海航交所:本周中国出口集装箱运输市场行情表现良好,远洋航线运价上涨

2024-04-26 22:06

中基协:3月证券期货经营机构私募资管产品备案规模环比增长127.51%

2024-04-26 22:05

美国4月密歇根大学消费者信心指数终值为77.2,前值77.9

2024-04-26 22:04

美国消费者4月份对未来一年通胀率预期由2.9%升至3.2%

2024-04-26 22:00

东风着陆场完成最后一次全系统综合演练,准备就绪迎接神十七航天员回家

2024-04-26 21:54

中概股指数涨幅扩大至3.5%,小鹏汽车涨近10%

扫描下载App