cudaGraph class

class to create a CUDA graph managed by C++ smart pointer

This class wraps a cudaGraph_t handle with std::unique_ptr to ensure proper resource management and automatic cleanup.