In this paper, we present a methodology, based on an Enhanced Genetic Algorithm (EGA), for assigning data objects to dual-bank memories. Our approach is global, and special effort is made to identify those objects that could potentially benefit from an assignment to a specific memory, or perhaps duplication in both memories. The enhancements to the genetic algorithm include a directed mutation operator and a new type of elitism. Together, these enhancements improve the performance of the genetic algorithm and allow the EGA to run unsupervised. The EGA has been incorporated into a retargetable, optimizing compiler for embedded systems, currently under development at the University of Guelph.
/lp/association-for-computing-machinery/an-ega-approach-to-the-compile-time-assignment-of-data-to-multiple-UWgSO2WRDv