我想知道人們爲了編譯他們的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