| dc.creator |
Larsen, Samuel |
|
| dc.creator |
Witchel, Emmett |
|
| dc.creator |
Amarasinghe, Saman P. |
|
| dc.date |
2003-11-29T21:06:30Z |
|
| dc.date |
2003-11-29T21:06:30Z |
|
| dc.date |
2003-01 |
|
| dc.date.accessioned |
2013-10-09T02:32:22Z |
|
| dc.date.available |
2013-10-09T02:32:22Z |
|
| dc.date.issued |
2013-10-09 |
|
| dc.identifier |
http://hdl.handle.net/1721.1/3760 |
|
| dc.identifier.uri |
http://koha.mediu.edu.my:8181/xmlui/handle/1721 |
|
| dc.description |
A static memory reference exhibits a unique property when its dynamic memory addresses are congruent with respect to some non-trivial modulus. Extraction of this congruence information at compile-time enables new classes of program optimization. In this paper, we present methods for forcing congruence among the dynamic addresses of a memory reference. We also introduce a compiler algorithm for detecting this property. Our transformations do not require interprocedural analysis and introduce almost no overhead. As a result, they can be incorporated into real compilation systems. On average, our transformations are able to achieve a five-fold increase in the number of congruent memory operations. We are then able to detect 95% of these references. This success is invaluable in providing performance gains in a variety of areas. When congruence information is incorporated into a vectorizing compiler, we can increase the performance of a G4 AltiVec processor up to a factor of two. Using the same methods, we are able to reduce energy consumption in a data cache by as much as 35%. |
|
| dc.description |
Singapore-MIT Alliance (SMA) |
|
| dc.format |
11417 bytes |
|
| dc.format |
application/pdf |
|
| dc.language |
en_US |
|
| dc.relation |
Computer Science (CS); |
|
| dc.subject |
memory address congruence |
|
| dc.subject |
vectorizing compiler |
|
| dc.subject |
program optimization |
|
| dc.title |
Increasing and Detecting Memory Address Congruence |
|
| dc.type |
Article |
|