最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

自編教材分享:第六章—程序編寫優(yōu)化(三)

2023-10-08 16:44 作者:先進編譯實驗室  | 我要投稿


過程級優(yōu)化

別名消除

C語言中為了方便編碼為變量定義了別名,但在同一程序中兩個以上的指針引用相同的存儲位置時,將存在指針別名的問題。

優(yōu)化前代碼:

優(yōu)化后代碼:

常數(shù)傳播

常數(shù)傳播是指替代表示式中已知常數(shù)的過程,一般在編譯前期進行。實際程序中可能存在復雜的控制流,編譯器把所有情況的常數(shù)替換都識別出來并對程序實施正確的常數(shù)替換優(yōu)化是較為困難的,因此建議優(yōu)化人員盡量手動進行常數(shù)傳播優(yōu)化。

優(yōu)化前代碼:

優(yōu)化后代碼:

內(nèi)聯(lián)替換

為了節(jié)省函數(shù)調用的時空開銷,可以采用內(nèi)聯(lián)替換的思路優(yōu)化程序,具體優(yōu)化思路為函數(shù)在被調用處復制函數(shù)代碼副本,并通過代碼膨脹將被調函數(shù)體副本直接在調用處進行內(nèi)聯(lián)替換,同時被調過程內(nèi)的形參也將被替換為主調過程內(nèi)的實參。

優(yōu)化前代碼:

優(yōu)化后代碼:

過程克隆

過程克隆是指當一個過程在不同的調用環(huán)境下表現(xiàn)出不同的特性時根據(jù)需要生成該過程的多個實現(xiàn),便于后續(xù)針對每個實現(xiàn)進行不同的優(yōu)化處理,程序中的調用點會根據(jù)其上下文的屬性信息來選擇調用過程實現(xiàn)的某個版本。

優(yōu)化前代碼:

優(yōu)化后代碼:

全局變量優(yōu)化

全局變量尤其是多個文件共享的全局數(shù)據(jù)結構會阻礙編譯器的優(yōu)化。 并且其使得程序員不便追蹤其變化,難以進行手工優(yōu)化。對于并行程序來說,全局變量除非在迫不得已的情況下才建議使用,就算要使用全局變量,也盡量通過參數(shù)傳遞的方式。

優(yōu)化前代碼:

優(yōu)化后代碼:


自編教材分享:第六章—程序編寫優(yōu)化(三)的評論 (共 條)

分享到微博請遵守國家法律
绥阳县| 家居| 秦皇岛市| 思南县| 平罗县| 观塘区| 行唐县| 金湖县| 婺源县| 义马市| 常州市| 泌阳县| 长春市| 伊吾县| 洞口县| 新泰市| 襄垣县| 古田县| 南康市| 永定县| 明溪县| 得荣县| 武陟县| 沧州市| 名山县| 诸暨市| 卢湾区| 阿拉善右旗| 忻州市| 绵阳市| 五寨县| 乌审旗| 邻水| 灵寿县| 天津市| 蕲春县| 乐都县| 云林县| 拜泉县| 托克逊县| 湖口县|