如何适配Arm64架构的 iosAPP

本文介绍了如何使iOS应用适配Arm64架构,包括更新Xcode设置,确保支持32-bit和64-bit,解决数据类型和方法调用变化等问题。遵循Apple的64-bit移植指南,检查并修正整型、浮点型数据类型,指针到整型转换,以及数据结构和方法调用的一致性,确保应用在64-bit设备上稳定运行。
摘要由CSDN通过智能技术生成

苹果在2014年10月20号发布了一条消息:从明年的二月一号开始,提交到App Store的应用必须支持64-bit。详细消息地址为:https://developer.apple.com/news/?id=10202014a

那们我们应该如何开始着手让自己的App支持64-Bit呢?

基本知识

从iPhone 5S的A7 CPU开始到刚刚发布的iPhone 6(A8 CPU)都已经支持64-bit ARM 架构。关于64-bit的介绍详见维基百科。知乎上有很多关于苹果使用A7,A8芯片的讨论,可以参考 iPhone 6 的 Apple A8 芯片对比 Apple A7 提升明显吗?iPhone 5s 配备的 A7 处理器是 64 位,意味着什么?

  • Xcode 5.0.1开始支持编译32-bit和64-bit的Binary
  • 同时支持32-bit和64-bit,我们需要选择的minimum deployment target为 iOS 5.1.1
  • 64-bit的Binary必须运行在支持64-bit的CPU上,并且最小的OS版本要求是 7.0.3

关于Xcode “Build Setting”中的Architectures参数问题

  • Architectures:你想支持的指令集。(支持指令集是通过编译生成对应的二进制数据包实现的,如果支持的指令集数目有多个,就会编译出包含多个指令集代码的数据包,造成最终编译的包很大。)
  • Valid architectures:即将编译的指令集。(Valid architectures 和 Architecture两个集合的交集为最终编译生成的版本)
  • Build Active Architecture Only:是否只编译当前设备适用的指令集(如果这个参数设为YES,使用iPhone 6调试,那么最终生成的一个支持ARM64指令集的Binary。一般在DEBUG模式下设为YES,RELEASE设为NO)

关于指令集如下参考:

ARMv8/ARM64: iPhone 6(Plus), iPhone 5s, iPad Air(2), Retina iPad Mini(2,3)
ARMv7s: iPhone 5, iPhone 5c, iPad 4 
ARMv7: iPhone 3GS, iPhone 4, iPhone 4S, iPod 3G/4G/5G, iPad, iPad 2, iPad 3, iPad Mini   
ARMv6: iPhone, iPhone 3G, iPod 1G/2G

对于支持64-bit,我们可以设置Architectures为 Standard architectures,在最新的Xcode 6上,它包括 armv7和arm64。

让App支持32-bit和64-bit基本步骤

  • 确保Xcode版本号>=5.0.1
  • 更新project settings, minimum deployme
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Paddle是一个流行的深度学习框架,它提供了大量的深度学习模型和算法,并支持在不同的硬件平台上进行运行。其中,Paddle可以适配ARM架构服务器,以下是关于此适配的详细回答。 首先,ARM架构服务器在最近几年逐渐流行起来,特别是在移动领域和物联网领域。它们通常具有更低的功耗和更高的能效,能够在相同功耗下提供更高的性能。为了满足日益增长的深度学习任务需求,将Paddle适配到ARM架构服务器上是非常必要的。 在适配ARM架构服务器方面,Paddle采取了以下的措施: 1. 支持ARM架构:Paddle为ARM架构服务器提供了相应的软件支持,包括ARM64指令集的优化和ARM平台特定的编译工具链。通过这些支持,Paddle可以在ARM架构服务器上进行高效的模型训练和推理。 2. 高性能计算库:Paddle配备了高性能的计算库,例如Math库和BLAS库,它们针对ARM架构进行了优化。这些优化的库能够使得Paddle在ARM架构服务器上获得更好的性能,提高深度学习任务的效率。 3. 模型压缩和量化:针对ARM架构服务器上的资源有限的情况,Paddle还提供了模型压缩和量化的功能。通过模型压缩和量化,可以减小模型的体积和计算量,从而更好地适配ARM架构服务器的资源限制。 总而言之,Paddle适配ARM架构服务器的关键在于提供ARM架构的软件支持和优化,提供高性能计算库,并提供模型压缩和量化的功能。通过这些措施,Paddle可以在ARM架构服务器上实现高效的深度学习模型训练和推理,满足ARM架构服务器上的深度学习任务需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值