Variation Aware Compilation for Improving Energy-Efficiency of Nanometer Processor Caches