Mitigating Bank Conflicts In Main Memory Via Selective Data Duplication And Migration