|
|
|
| Table 7.8 Comparison table (from Dubey [78]). |
| Reference Strategy | Branch Scope | Scheduling | | | Tomasulo [288] | within | dataflow | | | Thornton [281] | within | control flow | | | Tjaden/Flynn [283] | within | control flow static-stream | | | Riseman/Foster [246] | unlimited | control flow | | | Tjaden [282] | within | control flow | | | Kuck [174] | 1 | sequential | | | Wedig [302] | 1 | control flow | | | Weiss/Smith [303] | within | dataflow | | | Nicolau/Fisher [218] | unlimited | sequential trace sched. | | | HPSm [227] | > 1 | dataflow | | | Uht [292] | 1 | control flow | | | Hsu/Davidson [134] | 1 | sequential decision tree | | | Acosta et al. [2] | within | control flow | | | Sohi/Vajapeyam [267] | within | dataflow | | | iWARP [176] | > 1 | sequential software pipe. | | | CYDRA [242] | > 1 | dataflow | | | Smith et al. [266] | | | | | ideal fetch unit | 1 | control flow | | | nonideal fetch unit | 1 | control flow | | | Johnson [149] | 1 | control flow | | | Note: unless otherwise indicated, all control flow strategies are based on dynamic instruction stream. Branch scope refers to the limits that branch instructions place on instruction independence detection: "within" means that the scope cannot go beyond a conditional branch. The indicator "1" means that the hardware can detect independence beyond a single conditional branch, but not beyond two branches. In some cases, this was simply inferred by other processor limitations. "Unlimited" refers to analyses that assume a perfect prediction (an oracle) of the outcome of branches, or unlimited ability to proceed down all paths during execution. | | Speedups given without a range are best-case speedups. Reported speedups should be taken with caution, as they are not relative to the same baseline processor. |
|
|
|