導航:首頁 > 源碼編譯 > 服務編譯耗時優化

服務編譯耗時優化

發布時間:2024-08-14 00:06:57

❶ 應用編譯優化三種模式

數據對齊、數據集中譽中、減少體積。經過查詢網路題庫信息,應用編譯優化三種模式是數據對齊、數據集中、減少體積,編譯優化的度量有很多種,包括運行時間減少,代碼長度變短,執行期間處理器能耗更低等等。優化編譯器拍虛褲除了生成高效襲簡的代碼,還應該具備使輸入的小改動不應該導致性能出現較大變動。

❷ Xcode 構建速度優化(一)衡量編譯時間

隨著項目不斷迭代,工程文件越來越多,引用的三方庫也越來越多,這些直接導致編譯時間的不斷增加,完整編譯一次項目動輒需要五分鍾以上時間,實在有些影響開發效率,是時候來一波提速了。

為編譯和構建提速,首先我們需要對速度有一個衡量標准:准確獲得構建用時

首先,我們需要定義要衡量和優化的內容。 有兩種選擇:

xcode默認情況下會跟蹤所有構建,我們可以通過更改xcode相關設置,來在活動查看器中顯示出構建時間,通過命令行:

每次編譯成功後,會在Successed之後顯示出所用時間:

Xcode Build Timing Summary是Xcode10中加入的用於查看獲取構建時間和發現用時瓶頸方面的最有利工具。 可以通過Proct->Perform Action->Build With Timing Summary來開啟:這樣在 Build Log 的末尾就會添加 Timing Summary Log。我們可以通過這個 log 看到哪個階段是耗時的,便於我們進行優化。

如上圖中: xib階段的編譯耗時明顯是比普通c文件要多的,意味著我們可以通過減少xib方式來優化提升速度
而c文件的編譯用時比總時間還要長,是因為c文件是並行編譯的

在命令行中同樣可以開啟這個功能:

常用的第三方工具有 BuildTimeAnalyzer 、 xcode-build-times-rendering 、 XCLogParser 。

BuildTimeAnalyzer可以統計可以得出某個文件的類型檢查時長,每個表達式的類型檢查時長。

xcode-build-times-rendering是一個Ruby編寫的第三方工具,可以方便地分別測量目標的構建時間並在圖表上顯示它們,使用gem安裝

接下來使用這個工具自帶命令配置項目

然後構建項目並生成報告:

這個工具使用上比較簡單,缺點是只能從宏觀上生成各個target編譯的整體圖標,無法詳細列出各個內部編譯明細

XCLogParser可以詳細列出各個Target和內部每個文件的編譯耗時,對我們分析編譯時間瓶頸非常有幫助,它的工作原理主要是做為解析器,通過解析xcode編譯生成的xcactivitylog日誌來記錄
安裝:

編譯項目後,進行安裝

安裝成功後通過命令:

會自動在當前目錄的 build/xclogparser/reports/ 路徑下生成報告,其中--project參數需要設置為待分析項目的名字,並注意當前在終端切換到希望寫入日誌的目錄。

報告截圖:

這個工具將作為我們後面分析提升編譯構建速度的主要使用工具。

經過我多次在不同時間段,不同電腦上不斷嘗試編譯,
我發現編譯耗時是一個比較玄的東西,及時在同一台電腦,同一個項目, 同一套環境配置下,編譯用時也會隨著電腦當前狀態(包括同時打開進程、散熱等等)上下大幅跳動,就像演算法時間復雜度一樣,有時候我們明明做了一些細微的優化,但是結果反而是編譯耗時增加了,這是很正常的事情
所以,衡量這個標准需要我們取多次試驗中的平均值作為參考。

❸ 濡備綍浼樺寲 Android Studio 鍚鍔錛岀紪璇戝拰榪愯岄熷害

Android Studio 鍚鍔ㄩ熷害浼樺寲
1銆佸紑鍚 gradle 鍗曠嫭鐨勫畧鎶よ繘紼
褰 Android Studio 閬囧埌閿欒鐨勬椂鍊欙紝寰寰浼氬艱嚧 Android Studio 鎸傛帀錛屼負浜嗛槻姝㈤鍑虹▼搴忥紝鍒欏彟澶栧紑鍚涓涓綰跨▼鏉ュ畧鎶 Android Studio 鐨勮繘紼嬶紝鍏蜂綋鎿嶄綔銆 鍦 C:\Users\.gradle 榪欎釜鐩褰曚笅錛屽壋寤 gradle.properties 閰嶇疆鏂囦歡錛屽嶅埗浠ヤ笅閰嶇疆榪涜屼紭鍖栥
# Project-wide Gradle settings.
org.gradle.daemon=true
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m
-XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.parallel=true
org.gradle.configureondemand=true

2銆佹墿澶у唴瀛
64浣嶏細\studio64.exe.vmoptions or studio.exe.vmoptions
32浣嶏細\studio.exe.vmoptions or studio.exe.vmoptions
緙栬緫榪欎釜鏂囦歡錛屽湪鏈寮濮嬬殑涓よ岃劇疆鍐呭瓨澶у皬錛岀被浼間簬eclipse.ini涓鐨勯厤緗銆傞厤緗濡備笅錛
-Xms256m
-Xmx1024m
3銆佷紭鍖栫紪璇戞椂VM澶у皬
閫夋嫨 file->setting->compile 娣誨姞濡備笅鍙傛暟錛
-Xmx1024m
-XX:MaxPermSize=128m
-XX:+HeapDumpOnOutOfMemoryError
-Dfile.encoding=UTF-8
鍏蜂綋鍙傛暟澶у皬瑙嗙數鑴戦厤緗鑰屽畾銆

閫氳繃涓婅堪榪欎簺浼樺寲鎿嶄綔錛岀粡榪囧疄闄呮祴璇曪紝緙栬瘧閫熷害鏈夊緢澶ф彁鍗囷紝姣旇緝澶х殑欏圭洰浠庝箣鍓嶇殑 5-8 鍒嗛挓鍙浠ュ噺灝戝埌 1-2 鍒嗛挓銆

❹ 應用編譯優化三種模式

應用編譯優化三種模式分別是:編譯時間優化模式、執行時間優化模式和代碼大小優化模式。
1、編譯時間優化模式:關注編譯速度的提升,以縮短應用程序高脊的編譯時間為目標。在這種模式下,編譯器會減少編譯時間,會降低應用程序的執行效率。
2、執行時間優化模式:關注應用程序的執行效率,以提高應用程序的性能為目標。在這種模式下,編譯器會優化應用程序的代碼,以提高執行效率,會增加編譯時間。
3、代碼大小優化模式:關注應用程序的大小,以減小應兆培用程序的體積為目標。族念唯在這種模式下,編譯器會減小應用程序的代碼大小,以減小應用程序的體積,會降低應用程序的執行效率。

閱讀全文

與服務編譯耗時優化相關的資料

熱點內容
閃迪加密軟體如何去除 瀏覽:560
格力壓縮機技術 瀏覽:7
app下單約妹子的什麼語音 瀏覽:834
華為軟體加密怎麼關閉 瀏覽:325
安卓手機q系統怎麼用 瀏覽:105
一個淡定的程序員 瀏覽:423
怎麼在dos窗口打開python 瀏覽:591
怎麼通過網頁取伺服器ip 瀏覽:789
android系統發展前景 瀏覽:852
了8解壓密碼 瀏覽:633
單片機的定時器資源是計數器 瀏覽:628
黃鑽石的圖標是什麼app 瀏覽:774
mac白色文件夾問號 瀏覽:720
怎麼申請郵箱的伺服器 瀏覽:13
c項目兩個工程怎麼編譯 瀏覽:645
知乎app有什麼作用 瀏覽:451
單片機帶的比較器 瀏覽:391
程序員都是精英 瀏覽:19
10種編程語言 瀏覽:749
綿陽學駕駛手機上下什麼app 瀏覽:129