| D. Wall, `Register windows vs. register allocation', Proceedings of the SIGPLAN 88 Conference on Programming Language Design and Implementation, SIGPLAN Notices, 23, (7), 67--78 (1988). |
....between Alewife and the CM 5, the following results have been demonstrated. First, the SPARC register windows hurt performance on the CM 5. It is not clear that register windows are useful on sequential machines; Wall has demonstrated that link time register allocation can perform nearly as well [96]. However, the presence of register windows decreases the performance of the CM 5. The register windows raise the cost of context switching on the CM 5. In addition, they raise the cost for deeply nested procedure calls; when running with active messages the call stack is deeper than in sequential ....
D.W. Wall. "Register Windows vs. Register Allocation". In Proceedings of the SIGPLAN '88 Conference on Programming Language Design and Implementation, pages 67--78, Atlanta, GA, June 22--24, 1988.
....stack engine (RSE) without explicit program intervention. It is ironic that in an architecture designed to give compiler control of the processor, the compiler is not given control of saving and restoring registers. This is one area where compiler technology has a proven record of success [10]. Only a handful of registers need to be saved and restored across a procedure call, and the saves and restores can typically be placed at locations where they do not conflict with the other computation. On an IA64, the register save engine may be triggered at any time. Also note it will save all ....
D. Wall, "Register Windows vs. Register Allocation," in Proc. ACM SIGPLAN Conf. on Programming Language Design and Implementation `88, pp. 67-78, Atlanta, GA, June 1988.
.... trace scheduling [8] ILP enhancing optimizations, software pipelining, and classic global and loop optimizations [1] 2] 9] 10] Profiling information has also been used to guide instruction placement [11] 12] to help the register allocator identify frequently accessed variables [13] [14], and to aid the compiler with inlining expansion [15] 16] Memory dependence profiling has been used to aid ILP enhancing optimizations by allowing the compiler to reorder ambiguous memory references [2] 4 Profiling has also been used to identify procedures, basic blocks or source lines with ....
D. W. Wall, "Register windows vs. register allocation," in Proceedings of the 1988 SIGPLAN Symposium on Compiler Construction, pp. 264--275, June 1988.
....calls in most programs significantly reduces the effectiveness of the register set. Register windows are a hardware solution to this problem, but interprocedural register allocation which takes into account the probabilities of function calls can make much better use of a given register set [Wall86, Wall88, Wall91, SteenkisteHennessy89]. In addition to the three optimizations mentioned above, several traditional high level optimizations can also benefit from knowledge of frequently executed paths by using tail duplication to create what are effectively larger basic block structures [ChangMahlkeHwu91] A similar mechanism can ....
David W. Wall. Register Windows vs Register Allocation. Proceedings of the SIGPLAN `88 Conference on Programming Language Design and Implementation, June 1988, pages 67-78.
....then it is better to implement a sequence of branch instructions, starting from the most likely case to the least likely case. Otherwise, it is better to implement a hash table lookup jump[12] Profile information can help a register allocator to identify the frequently accessed variables[13] [14]. Function inline expansion eliminates the overhead of function calls and enlarges the scope of global code optimizations. Using profile information, the compiler can identify the most frequently invoked calls and determine the best expansion sequence[15] A counter based execution profiler that ....
D. W. Wall, "Register Window vs. Register Allocation", Proceedings of the SIGPLAN '88 Conference on Programming Language Design and Implementation, June 1988.
No context found.
D. Wall, `Register windows vs. register allocation', Proceedings of the SIGPLAN 88 Conference on Programming Language Design and Implementation, SIGPLAN Notices, 23, (7), 67--78 (1988).
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC