Superblock scheduling using genetic programming for embedded systems
Anjali Mahajan, Mazhar Ali · 2008
Instruction scheduling is an important issue in the compiler optimization for embedded systems. The instruction scheduling problem is mainly solved heuristically since finding an optimal solution requires significant computational resources and, in general, the problem of optimally scheduling instructions is known to be NP-Complete. The development of processors with pipelines and multiple functional units has increased the demands on compiler writers to write complex instruction scheduling algorithms. These algorithms are required to ensure that the most efficient use of resources, i.e. the functional units and pipelines of the processor, is made due to the increased complexity of processor architectures. In this paper, the specific problem of automatically creating instruction scheduling heuristics is addressed.