| Improved spill code generation for software pipelined loops |
| Full text |
Pdf
(688 KB)
|
| Source
|
Conference on Programming Language Design and Implementation
archive
Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation
table of contents
Vancouver, British Columbia, Canada
Pages: 134 - 144
Year of Publication: 2000
ISBN:1-58113-199-2
Also published in ...
|
|
Authors
|
|
Javier Zalamea
|
Departament d'Arquitectura de Computadors, Universitat Politècnica de Catalunya, cr. Jordi Girona 1-3, Mòdul D6, Campus Nord, 08034, Barcelona, SPAIN
|
|
Josep Llosa
|
Departament d'Arquitectura de Computadors, Universitat Politècnica de Catalunya, cr. Jordi Girona 1-3, Mòdul D6, Campus Nord, 08034, Barcelona, SPAIN
|
|
Eduard Ayguadé
|
Departament d'Arquitectura de Computadors, Universitat Politècnica de Catalunya, cr. Jordi Girona 1-3, Mòdul D6, Campus Nord, 08034, Barcelona, SPAIN
|
|
Mateo Valero
|
Departament d'Arquitectura de Computadors, Universitat Politècnica de Catalunya, cr. Jordi Girona 1-3, Mòdul D6, Campus Nord, 08034, Barcelona, SPAIN
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 13, Downloads (12 Months): 35, Citation Count: 9
|
|
|
ABSTRACT
Software pipelining is a loop scheduling technique that extracts
parallelism out of loops by overlapping the execution of several
consecutive iterations. Due to the overlapping of iterations,
schedules impose high register requirements during their execution.
A schedule is valid if it requires at most the number of registers
available in the target architecture. If not, its register requirements
have to be reduced either by decreasing the iteration overlapping or by
spilling registers to memory. In this paper we describe a set of heuristics
to increase the quality of register-constrained modulo schedules. The heuristics decide between the two previous alternatives and define criteria for effectively selecting spilling candidates. The heuristics proposed for reducing the register pressure can be applied to any software pipelining technique. The proposals are evaluated using a register-conscious software pipeliner on a workbench composed of a large set of loops from the Perfect Club benchmark and a set of processor configurations. Proposals in this paper are compared against a previous proposal already described in the literature. For one of these processor configurations and the set of loops that do not fit in the available registers (32), a speed-up of 1.68 and a reduction of the memory traffic by a factor of 0.57 are achieved with an affordable increase in compilation time. For all the loops, this represents a speed-up of 1.38 and a reduction of the memory traffic by a factor of 0.7.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
A. Aiken and A. Nicolau. A realistic resourceconstrained software pipelining algorithm. Advances in Languages and Compilers for Parallel Processing, pages 274-290, 1991.
|
 |
2
|
|
 |
3
|
J. R. Allen , Ken Kennedy , Carrie Porterfield , Joe Warren, Conversion of control dependence to data dependence, Proceedings of the 10th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, p.177-189, January 24-26, 1983, Austin, Texas
[doi> 10.1145/567067.567085]
|
| |
4
|
E. Ayguadd, C. Barrado, A. Gonzelez, J. Labarta, J. Llosa, D. L6pez, S. Moreno, D. Padua, F.Reig, Q. Riera, and M. Valero. Ictineo: a tool for instruction level parallelism research. Technical Report UPC-DAC- 96-61, Universitat Politacnica de Catalunya, December 1996.
|
 |
5
|
D. Bernstein , M. Golumbic , y. Mansour , R. Pinter , D. Goldin , H. Krawczyk , I. Nahshon, Spill code minimization techniques for optimizing compliers, Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation, p.258-263, June 19-23, 1989, Portland, Oregon, United States
|
| |
6
|
M. Berry, D. Chen, P. Koss, and D. Kuck. The Perfect Club benchmarks: Effective performance evaluation of supercomputers. Technical Report 827, Center for Supercomputing Research and Development, November 1988.
|
 |
7
|
P. Briggs , K. D. Cooper , K. Kennedy , L. Torczon, Coloring heuristics for register allocation, Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation, p.275-284, June 19-23, 1989, Portland, Oregon, United States
|
 |
8
|
|
 |
9
|
|
 |
10
|
|
| |
11
|
A. Charlesworth. An approach to scientific array processing: The architectural design of the AP120B/FPS- 164 family. Computer, 14(9):18-27, 1981.
|
 |
12
|
James C. Dehnert , Peter Y.-T. Hsu , Joseph P. Bratt, Overlapped loop support in the Cydra 5, Proceedings of the third international conference on Architectural support for programming languages and operating systems, p.26-38, April 03-06, 1989, Boston, Massachusetts, United States
|
| |
13
|
|
| |
14
|
|
| |
15
|
C. Eisenbeis, S. Lelait, and B. Marmol. The meeting graph: a new model for loop cyclic register allocation. In Prec. of the Fifth Workshop on Compilers for Parallel Computers (CPC95), pages 503-516, June 1995.
|
| |
16
|
L. Hendren, G. Gao, E. Altman, and C. Mukerji. Register allocation using cyclic interval graphs: A new approach to an old problem. ACAPS Tech. Memo 33, Advanced Computer Architecture and Program Structures Group, McGill University, 1992.
|
 |
17
|
|
 |
18
|
|
| |
19
|
|
| |
20
|
|
| |
21
|
|
| |
22
|
Josep Llosa , Mateo Valero , Eduard Ayguadé , Antonio González, Hypernode reduction modulo scheduling, Proceedings of the 28th annual international symposium on Microarchitecture, p.350-360, November 29-December 01, 1995, Ann Arbor, Michigan, United States
|
 |
23
|
William Mangione-Smith , Santosh G. Abraham , Edward S. Davidson, Register requirements of pipelined processors, Proceedings of the 6th international conference on Supercomputing, p.260-271, July 19-24, 1992, Washington, D. C., United States
[doi> 10.1145/143369.143419]
|
| |
24
|
S. Ramakrishnan. Software pipelining in PA-RISC compilers. Hewlett-Packard Journal, pages 39-45, July 1992.
|
 |
25
|
|
 |
26
|
B. R. Rau , M. Lee , P. P. Tirumalai , M. S. Schlansker, Register allocation for software pipelined loops, Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation, p.283-299, June 15-19, 1992, San Francisco, California, United States
|
 |
27
|
|
 |
28
|
John Ruttenberg , G. R. Gao , A. Stoutchinin , W. Lichtenstein, Software pipelining showdown: optimal vs. heuristic methods in a production compiler, Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation, p.1-11, May 21-24, 1996, Philadelphia, Pennsylvania, United States
|
 |
29
|
Jian Wang , Andreas Krall , M. Anton Ertl , Christine Eisenbeis, Software pipelining with register allocation and spilling, Proceedings of the 27th annual international symposium on Microarchitecture, p.95-99, November 30-December 02, 1994, San Jose, California, United States
[doi> 10.1145/192724.192734]
|
CITED BY 9
|
|
|
|
|
|
|
|
|
|
Javier Zalamea , Josep Llosa , Eduard Ayguadé , Mateo Valero, Two-level hierarchical register file organization for VLIW processors, Proceedings of the 33rd annual ACM/IEEE international symposium on Microarchitecture, p.137-146, December 2000, Monterey, California, United States
|
|
|
|
|
|
|
|
|
|
|
Peer to Peer - Readers of this Article have also read:
-
Data structures for quadtree approximation and compression
Communications of the ACM
28, 9
Hanan Samet
-
A hierarchical single-key-lock access control using the Chinese remainder theorem
Proceedings of the 1992 ACM/SIGAPP Symposium on Applied computing
Kim S. Lee
, Huizhu Lu
, D. D. Fisher
-
An intelligent component database for behavioral synthesis
Proceedings of the 27th ACM/IEEE conference on Design automation
Gwo-Dong Chen
, Daniel D. Gajski
-
The GemStone object database management system
Communications of the ACM
34, 10
Paul Butterworth
, Allen Otis
, Jacob Stein
-
Putting innovation to work: adoption strategies for multimedia communication systems
Communications of the ACM
34, 12
Ellen Francik
, Susan Ehrlich Rudman
, Donna Cooper
, Stephen Levine
|