Data Placement in HPC Architectures with Heterogeneous Off-chip Memory