C++/CUDA Program Building Blocks