正文内容 评论(0

iPhone 5纯硬件评测:给你想要的一切
2012-10-25 16:53:11  出处:快科技 作者:上方文Q 编辑:上方文Q     评论(0)点击可以复制本篇文章的标题和链接

【Swift:定制代码解读定制核心】

为了深刻理解Swift,Anand Shimpi同学决定自己写代码(他爹是计算机科学教授),并求助于北卡罗来纳州大学的天才移动开发者Nirdhar Khazanie,将其C语言代码转换成了一个iPhone应用,还得到了一个可以设定指令和数据集大小的框架,一切就简单了。

为了验证Swift是否有第三个整数ALU单元,首先设置一个独立的整数加法循环,所有变量均彼此无关,可以最大程度地并行化,然后在iPhone 4S/5上算它几百万次。

iPhone 5纯硬件评测:给你想要的一切

结果同频下Swift只快了不到10%,平均延迟也只缩短了两个时钟周期,这就可以排除第三个整数ALU单元的存在了。

结合苹果自己的文档可以进一步证实,Swift只有两个整数ALU单元,每时钟周期可以执行三个操作,暗示解码器也是3宽度的,但不清楚性能提升是否与此有关。

再看浮点方面,将之前的代码改成单精度和双精度浮点加法就行了。

iPhone 5纯硬件评测:给你想要的一切

单精度的反而有所倒退,证明从800MHz到1.3GHz不可能完美线性提升,而在双精度下,Cortex-A9变慢了,Swift却加快了1.2倍,自然差距极大。这说明,苹果极有可能增加了第二个浮点单元,来改进FMA或者双精度浮点性能,也可能是所用代码可以利用218-bit NEON。

自己写的代码毕竟不可能完全靠谱,所以还得看看标准测试工具的。首先是大名鼎鼎Linpack的iOS移植版,对比性能和问题大小(problem size):

iPhone 5纯硬件评测:给你想要的一切

虽然曲线不是特别平滑,但很明显,Swift的浮点性能优势非常大,即便是问题大小很小的时候,这证实了有关第二个浮点发射端口的猜测。

再对比800MHz原始频率的iPhone 4S:

iPhone 5纯硬件评测:给你想要的一切

A6在问题大小变大的时候性能损失显然更小,证明Swift可以更好地对付内存延迟,并发浮点和内存操作都很棒。

最后是iOS下另一个常用的基准测试Passmark:

iPhone 5纯硬件评测:给你想要的一切

五个项目都有了大幅度的提升,其中整数47%、浮点118%、质数109%、qsort字符串22.8%、加密51%、压缩17.9%。

责任编辑:

  • 支持打赏
  • 支持0

  • 反对

  • 打赏

文章价值打分

当前文章打分0 分,共有0人打分
  • 分享好友:
  • |
本文收录在
#iPhone手机

  • 热门文章
  • 换一波

  • 好物推荐
  • 换一波

  • 关注我们

  • 微博

    微博:快科技官方

    快科技官方微博
  • 今日头条

    今日头条:快科技

    带来硬件软件、手机数码最快资讯!
  • 抖音

    抖音:kkjcn

    科技快讯、手机开箱、产品体验、应用推荐...