Heterogeneous computing : hardware and software perspectives - Zahran, Mohamed (ACM books, 2019)