The paper on "Code Generation for Modulo Scheduled Looops" is a very
comprehensive paper which describes the different requirements for
modulo
scheduling and in their absence also, how to achieve a good schedule.
Although modulo scheduling requires a lot of support from the hardware
like
speculation, predication and rotating register files, the authors
describe the procedure to still perform modulo scheduling. This paper
however lacks a detailed results section with modulo scheduling
performed on some applications on different processors and comparison
to
other scheduling techniques. It would have been a very useful resource
to
make some design choices in terms of hardware and/or compiler design.
Subramanian Rajagopalan