Determining Orderings - Goals What do we want to do? Reduce the working set size Minimize load times Be cache-friendly How should our algorithm do it? minimize the number of pages of code that need to be in memory at any given time place related functions together Special cases: Ultrasparc one-page instruction cache StrongARM: virtually-addressed, untagged cache