Abstract
The software pipeline technique is an effective approach to optimizing loops in array processor programs, but existing methods are of high complexity and the results may not be satisfactory.
This paper introduces the URPR algorithm, an extension of the microcode loop compaction algorithm URCR. Firstly, unroll the loop(the number of unrolled loop bodies relies on the inter-body data dependency); secondly, pipeline the unrolled loop bodies one by one; and finally, a new optimized loop body is obtained after rerolling. Preliminary tests indicate that URPR produces favorable results with lower complexity.
- 1 A.E. Charlesworth. An Approach to Scientific Array Processing: The Architectural Design of the AP-120B/FPS-164 Family. Computer, 18-27, Sept. 1981.Google Scholar
- 2 Pin Chen. Software Pipeline: A Code Optimization Technique to Improve the Efficiency of Array Processors. Master's thesis, Institute of North-Western Telecommunication Engineering, China, 1984.Google Scholar
- 3 J.A. Fisher, D. Landskov, and B.D. Shriver. Microcode Compaction: Looking Backward and Looking Forward. In Proceedings of the National Computer Conference, pages 95-102, AFIPS Press, Montvale, NJ, July 1981.Google Scholar
Digital Library
- 4 J.H. Patel and E.S. Davidson. Improving the Throughput of a Pipeline by Insertion of Delays. In Proceedings of the 3rd Annual Symposium on Computer Architecture, pages 159-164, 1976. Google Scholar
Digital Library
- 5 D.A. Pauda and D.J. Ku& High Speed Multiprocessors and Compilation Techniques. IEEE Itansactionu on Computers, C-29(9):763-776, Sept 1980.Google Scholar
- 6 B. Su and S. Ding. Some Experiments in Global Microcode Compaction. In Proceedings of the 18th Microprogramming Workshop (MICRO-la), pages 175-180, Asilomar, CA, November lQ85. Google Scholar
Digital Library
- 7 B. Su, S. Ding, and L. Jin. An Improvement of Trace Scheduling for Global Microcode Compaction. In Proceedings of the 17th Microprogramming Workshop (MICRO-17), pages 78-85, New Orleans, LA, October 1984. Google Scholar
Digital Library
- 8 R.F. Touzeau. A Fortran Compiler for the FPS-164 Scientific Computer. In Proceeding8 of the ACM SIGPLAN Symposium on Compiler Construction, pages 48-57,1984. Google Scholar
- 9 S.R. Vegdahl. Local Code Generation and Compaction in Optimixing Microcode Compilers. PhD thesis, Department of Computer Science, Carnegie-Mellon University, Pittsburgh, PA, 1982. Google Scholar
Digital Library
Index Terms
URPR—An extension of URCR for software pipelining
Recommendations
URPR—An extension of URCR for software pipelining
MICRO 19: Proceedings of the 19th annual workshop on MicroprogrammingThe software pipeline technique is an effective approach to optimizing loops in array processor programs, but existing methods are of high complexity and the results may not be satisfactory.
This paper introduces the URPR algorithm, an extension of the ...
Software Pipelining of Nested Loops
CC '01: Proceedings of the 10th International Conference on Compiler ConstructionSoftware pipelining is a technique to improve the performance of a loop by overlapping the execution of several iterations. The execution of a software-pipelined loop goes through three phases: prolog, kernel, and epilog. Software pipelining works best ...
Parallel-stage decoupled software pipelining
CGO '08: Proceedings of the 6th annual IEEE/ACM international symposium on Code generation and optimizationIn recent years, the microprocessor industry has embraced chip multiprocessors (CMPs), also known as multi-core architectures, as the dominant design paradigm. For existing and new applications to make effective use of CMPs, it is desirable that ...






Comments