Adaptive Memory Expansion on Heterogeneous Computing Systems in Support of Bigdata Analytics