Fundamentals of Accelerated Computing with CUDA C/C++