我想知道人们为了编译他们的iPhone应用程序正在做什么来优化他们的速度,而不是大小或折衷速度与大小。编译iPhone应用程序以获得最佳速度的最佳做法?
2
A
回答
6
你应该总是,总是在对你的特定应用程序的好坏做任何假设之前,对你的代码进行剖析。 Shark非常好,可以使用设备上的硬件性能计数器告诉你很多关于应用程序运行的低级细节。
在iPhone 3GS上,Thumb-2的编译不会产生旧Thumb指令集所做的性能损失(特别是它具有本机浮点)。有关其他详细信息,请参见this other question。
您可以在其中生成具有多个指令集的二进制文件
,但我不确定您是否可以对ARM6(iPhone 3GS之前版本)和针对ARM7(iPhone 3GS版)的“拇指确定” ,大概是iPad,不知道iPod touch)
。 编辑:这是可能的,感谢布拉德解释如何。
在很多情况下,优化大小也是优化速度的好方法:通过缩小代码大小,它可能更适合CPU的指令缓存,避免提取到内存。这更经常用于频繁执行紧密循环。
0
第1条提示 - 了解您的存储类。在数组上执行类似indexOfObject的操作可能会非常昂贵,并且通常可以通过使用不同的存储类或组织不同的数据来避免这些情况。性能工具可以帮助您找到这些情况。
相关问题
- 1. JavaMail编程最佳或最佳做法
- 2. 获取应用程序名称/编号的最佳做法
- 3. 如何在CUDA应用程序中构建数据以获得最佳速度
- 4. 清理iPhone应用程序内存的最佳做法?
- 5. 存储数据的最佳做法iPhone应用程序
- 6. iPhone/iPad应用程序图像格式最佳做法
- 7. 将ipad应用程序转换为iphone应用程序的最佳做法?
- 8. 为ios4.3,ios5和ipad编写应用程序的最佳做法
- 9. iPhone应用程序:最小化电池使用的最佳做法?
- 10. 获得粗略用户移动速度的最佳方法
- 11. 提高ASP.NET/C#编译速度的最佳方法是什么?
- 12. 以最佳做法登录?
- 13. 存储程序集的最佳做法?
- 14. 合并程序集的最佳做法?
- 15. 。这是iPhone上的最佳做法吗?
- 16. 远程编译和测试的最佳做法?
- 17. RabbitMQ - 最佳做法
- 18. 最佳做法response.getOutputStream
- 19. estimatedHeightForRowAtIndexPath最佳做法
- 20. 最佳做法applicationDidEnterBackground
- 21. 最佳做法UIScrollView
- 22. ActionListener最佳做法
- 23. CLLocationManager最佳做法
- 24. 以角度编辑网格的最佳做法
- 25. 最佳实践:HTTP处理程序或ActionFilters以获得最佳性能
- 26. iOS5:使用tableviewcontrollers构建应用程序的最佳做法
- 27. 使用SQLite开发AIR应用程序的最佳做法
- 28. 在Android应用程序上使用DBHelper(SQLite)的最佳做法
- 29. Android应用程序目录的最佳/常用做法
- 30. MvvmCross iPhone和iPad最佳做法
+1分析建议。算法中即使适度的变化也会比编译器设置的调整提供更多的性能。 – zoul 2010-04-27 16:47:25
通过选择“编译为Thumb”选项,并转到构建屏幕左下方的菜单并选择“添加构建设置条件”,可以构建Thumb条件。在新的条件下,选择ARMv6作为一种条件,关闭Thumb,然后在Thumb上为ARMv7添加一个新条件。 – 2010-04-27 16:51:45