CUDA Toolkit通过以下方式支持多种GPU:
cudaGetDeviceCount获取可用GPU数量,cudaSetDevice指定当前GPU,可在多GPU环境中灵活分配计算任务。cudaDeviceCanAccessPeer检查设备是否支持P2P,cudaDeviceEnablePeerAccess启用,cudaMemcpyPeerAsync进行数据传输,实现GPU间直接通信。cudaGetDeviceNVLinks检查支持情况,cudaDeviceGetP2PAttribute获取连接信息,加速GPU间数据传输。vector_add示例展示了在不同GPU上启动内核的并行计算方式。