2009年2月26日 星期四

(續) Braid computing

Braid的概念在於「在basic block的scope內,事先將dependence規納分析好」,這些互相之間具有相依性(dependence)的指令串便稱為braid。一個basic block內可以包含的braid數目,也就是計算結果互有因果關係的指令串,平均約為3條(braid的原意是「辮子」,單位應該是「條」吧?)。在SPEC 2000的整數型程式中,平均每個basic block可以找到2.8條braid,浮點數程式則有3.8條。這個數據是作者以gcc 4.0.1把SPEC程式compile成Alpha EV6架構指令集,同時加上-O2最佳化得到的結論,作者同時強調gcc 4.01並未在編譯過程中引入braid的概念,因而有大量的braid是「單指令」構成的。

沒有留言:

張貼留言