Programming Massively Parallel Processors 3rd Edition