Plánování trasování - Trace scheduling
![]() | tento článek potřebuje další citace pro ověření.Prosince 2009) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
Plánování trasování je optimalizace technika vyvinutá Josh Fisher použito v překladače pro počítačové programy.[1]
Kompilátor často může, tím přeskupení je generován pokyny ke stroji pro rychlejší spuštění vylepšete výkon programu. Zvyšuje ILP (Paralelnost na úrovni instrukcí ) podél důležité cesty provádění staticky předpovídat častou cestu provádění. Plánování trasování je jednou z mnoha známých technik, jak toho dosáhnout.
Trasa je sled instrukcí, včetně větví, ale bez smyček, který se provede pro některá vstupní data. Plánování trasování používá základní metodu plánování bloků k plánování pokynů v každé celé stopě, počínaje trasováním s nejvyšší frekvencí. Poté přidá kompenzační kód na vstupu a výstupu každé stopy, aby kompenzoval případné účinky, které by mohlo mít provedení mimo objednávku.
To může mít za následek velké zvýšení velikosti kódu a špatný nebo nepravidelný výkon, pokud se chování programu výrazně liší podle vstupu.
Plánování trasování bylo původně vyvinuto pro Word s velmi dlouhými instrukcemi nebo VLIW strojů a je formou globálního pohybu kódu. Funguje převedením smyčky na dlouhou přímou sekvenci kódu pomocí odvíjení smyčky a statické predikce větve. Tento proces odděluje „nepravděpodobný“ kód a přidává obslužné programy pro ukončení z trasování. Cílem je, aby byl nejběžnější případ proveden jako sekvenční sada instrukcí bez větví.
Viz také
Reference
- ^ Steven Muchnick; Muchnick and Associates (15. srpna 1997). Pokročilá implementace návrhu kompilátoru. Morgan Kaufmann. ISBN 978-1-55860-320-2.
Plánování trasování.
- Fisher, Joseph A. (1981). „Trace Scheduling: a Technique for Global Microcode Compaction“. Transakce IEEE na počítačích. 30 (7): 478–490. doi:10.1109 / TC.1981.1675827.
![]() | Tento programovací jazyk související článek je a pahýl. Wikipedii můžete pomoci pomocí rozšiřovat to. |