2012-06-21 54 views
2

這對於編譯器人來說是一個非常簡單的問題,但我總是被困於超級塊和超級塊。我已經看過超級塊和超級塊的定義,但我想從編譯器角度來了解它們的定義。編譯器視角的超級塊和超級塊定義

我熟悉像基本塊,謂詞執行和循環展開等概念,所以你可以跳過基本的東西。

謝謝!

+0

對於我們這些熟悉編譯器但從未聽過這些術語的人,您能否提供一個鏈接,指向您聽到的那些術語的定義? – templatetypedef

+0

當然。這裏有兩個鏈接:[this](http://www.trimaran.org/docs/trimaran4_manual.pdf)和[this](http://www.cs.cmu.edu/afs/cs/academic/class/ 15745-S07 /網絡/講座/ lect6-s07.pdf) – aminfar

回答

4

這個paper描述超級塊的概念和超級塊是什麼。簡而言之,這個想法是在基本塊中增加ILP,因爲基本塊中的ILP可能不夠高。超級街區是沒有側入口的路線。控制權只能從頂部進入,但可以在一個或多個出口點離開。所以單個條目在頂部,但多個退出。我們使用配置文件信息從包含多個基本塊的公共路徑構建超級塊。然後我們應用超級塊優化。看看這篇論文了解更多信息。

如果我們沒有單一的公共路徑,並且如果我們有預測支持,我們可以組合多個公共路徑來製作一個hyberblock並在超級塊上進行優化。