計算機組織與結構›Ch5 管線化(Pipeline)
第 40 題/共 58 題
◀ CC 40/58
40. Loop Unrolling、Branch Penalty、Compiler Optimization
#CC-05-040易Loop UnrollingBranch PenaltyCompiler Optimization

請評估以下巢狀迴圈在不同機器上的效能。這兩層巢狀迴圈對整數陣列 A 與 B 進行運算,每個陣列元素皆為 32-bit 整數:

for (i=0; i<1000; i++)
  for (j=0; j<1000; j++)
    A[i][j] = B[j][i] * 100 + 20;

編譯器可以使用什麼常見的最佳化技術,產生更有效率的程式碼版本,以緩解執行期間的分支代價(branch penalties)?請提供編譯器產生的最佳化後程式碼。

📄 成大113
跳轉到第題
▤完整推導請見《WH 資工筆記 · 計算機組織與結構》Ch5 管線化(Pipeline)
本章題號 · 21–40 / 58