Applied Parallel And Distributed Computing by Yi Pan