Advanced Parallel And Distributed Computing by