【问题标题】:Is it worth adding the armv7s slice on iOS6?是否值得在 iOS6 上添加 armv7s 切片?
【发布时间】:2012-10-31 16:54:38
【问题描述】:

所以我知道 armv7s 已针对 iPhone 5 进行了优化,添加它将使我的代码在该设备上运行得更快一些。

有谁知道有什么区别吗?有没有基准等?

权衡是应用程序的大小。我估计的应用程序大小从 3.3MB 到 5MB,加上 armv7s,下载量增加了 50%。

我在想,除非速度提升令人信服,否则下载成本可能不值得,但我似乎找不到太多关于好处的讨论。

【问题讨论】:

标签: ios xcode4.5 iphone-5 armv7


【解决方案1】:

如果您想利用 VFPv4 支持(这是 A6 SoC 的新增功能),则值得添加 armv7s 支持以加快浮点计算。如果您查看下面的链接,还有更多详细信息,这些链接仍然是我最初进行研究时找到的最佳资源。我不知道有什么基准可以指向,但是由于应用程序之间的好处可能会有所不同(取决于您的应用程序对浮点计算的处理器限制程度),无论如何最好自己运行它们。

anandtech article

apple dev forums link

related SO article

【讨论】:

  • 感谢您的信息。一个后续问题:armv7s 切片的存在与否是否会改变库代码的执行方式(例如,表格视图滚动),因为该代码驻留在操作系统中?即,即使我们自己不包括 armv7,我们是否还能从 VFPv4 中获得 Apple 的 UIKit 布局计算的好处?
  • 不客气,您需要编译该切片以包含从 VFPv4 中受益的说明。
【解决方案2】:

您正在构建什么样的应用程序? armv7s 增加了 vfp4 和整数除法。因此,除非您的应用程序是浮点重的(融合乘法累加〜信号处理)或通过变量除法执行大量变量(通过常量除法的变量在编译时高度优化)您应该没有armv7s支持就可以了。如果您的应用可以在最新硬件上运行,那么所有由框架(如布局)提供的软件都将使用这些改进。

【讨论】:

  • 我们的应用程序代码本身并不做很多数学计算,虽然它是 UIKit 并且到处都有滚动视图和动画。你是说我们仍然在那个 UIKit 代码中获得了 VFP4 的好处,即使我们的应用程序没有包含 armv7s 切片?
【解决方案3】:

我的建议是衡量它。 ARMv7 的改进非常具体(硬件整数除法,而 VFPv4 几乎是融合乘加),基准测试的改进可能适用于您的代码,也可能不适用于您的代码,所以我认为没有什么可以替代您的计时带有和不带有 ARMv7s 切片的 iPhone 5 上的应用程序。

【讨论】:

    【解决方案4】:

    要了解性能差异,您可以做的最简单的事情是在 iPhone 5 中安装您的应用程序,使用而不是使用“armv7s”支持。根据我的经验,我可以看到每种 iPhone 型号的性能差异。我的建议是为您的应用程序添加 armv7s 支持并在“极端”情况下进行测试,如果您发现任何性能差异,请忘记 ipa 大小和其他事情。

    【讨论】:

      猜你喜欢
      • 2012-09-26
      • 1970-01-01
      • 2021-12-21
      • 1970-01-01
      • 2021-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多