torch.cuda

在使用支持的cuda接口时,需要将API名称中的cuda变换为NPU形式才能使用:torch.cuda.***变换为torch_npu.npu.***。举例如下。

torch.cuda.current_device --> torch_npu.npu.current_device

API名称

NPU形式名称

是否支持

限制与说明

torch.cuda.StreamContext

  

否

  

torch.cuda.can_device_access_peer

  

否

  

torch.cuda.current_blas_handle

torch_npu.npu.current_blas_handle

否

  

torch.cuda.current_device

torch_npu.npu.current_device

是

  

torch.cuda.DoubleTensor

torch_npu.npu.DoubleTensor

     

torch.cuda.ShortTensor

torch_npu.npu.ShortTensor

     

torch.cuda.CharTenso

torch_npu.npu.CharTensor

     

torch.cuda.ByteTensor

torch_npu.npu.ByteTensor

     

torch.cuda.current_stream

torch_npu.npu.current_stream

     

torch.cuda.default_stream

torch_npu.npu.default_stream

是

  

torch.cuda.device

torch_npu.npu.device

是

  

torch.cuda.device_count

torch_npu.npu.device_count

是

  

torch.cuda.device_of

torch_npu.npu.device_of

是

  

torch.cuda.get_arch_list

  

否

  

torch.cuda.get_device_capability

  

否

  

torch.cuda.get_device_name

torch_npu.npu.get_device_name

是

  

torch.cuda.get_device_properties

  

否

  

torch.cuda.get_gencode_flags

  

否

  

torch.cuda.get_sync_debug_mode

  

否

  

torch.cuda.stream

torch_npu.npu.stream

是

  

torch.cuda.init

torch_npu.npu.init

是

  

torch.cuda.ipc_collect

  

否

  

torch.cuda.is_available

torch_npu.npu.is_available

是

  

torch.cuda.is_initialized

torch_npu.npu.is_initialized

是

  

torch.cuda.memory_usage

torch_npu.npu.memory_usage

否

  

torch.cuda.set_device

torch_npu.npu.set_device

是

  

torch.cuda.set_stream

  

否

  

torch.cuda.set_sync_debug_mode

  

否

  

torch.cuda.synchronize

torch_npu.npu.synchronize

是

  

torch.cuda.utilization

torch_npu.npu.utilization

是

  

torch.cuda.get_rng_state

torch_npu.npu.get_rng_state

是

  

torch.cuda.get_rng_state_all

torch_npu.npu.get_rng_state_all

是

  

torch.cuda.set_rng_state

torch_npu.npu.set_rng_state

是

  

torch.cuda.set_rng_state_all

torch_npu.npu.set_rng_state_all

是

  

torch.cuda.manual_seed

torch_npu.npu.manual_seed

是

  

torch.cuda.manual_seed_all

torch_npu.npu.manual_seed_all

是

  

torch.cuda.seed

torch_npu.npu.seed

是

  

torch.cuda.seed_all

torch_npu.npu.seed_all

是

  

torch.cuda.initial_seed

torch_npu.npu.initial_seed

是

  

torch.cuda.comm.broadcast

  

否

  

torch.cuda.comm.broadcast_coalesced

  

否

  

torch.cuda.comm.reduce_add

  

否

  

torch.cuda.comm.scatter

  

否

  

torch.cuda.comm.gather

  

否

  

torch.cuda.Stream

torch_npu.npu.Stream

是

  

torch.cuda.Stream.query

torch_npu.npu.Stream.query

     

torch.cuda.Stream.record_event

torch_npu.npu.Stream.record_event

是

  

torch.cuda.Stream.synchronize

torch_npu.npu.Stream.synchronize

是

  

torch.cuda.Stream.wait_event

torch_npu.npu.Stream.wait_event

     

torch.cuda.Stream.wait_stream

torch_npu.npu.Stream.wait_stream

是

  

torch.cuda.ExternalStream

  

否

  

torch.cuda.ExternalStream.query

  

否

  

torch.cuda.ExternalStream.record_event

  

否

  

torch.cuda.ExternalStream.synchronize

  

否

  

torch.cuda.ExternalStream.wait_event

  

否

  

torch.cuda.ExternalStream.wait_stream

  

否

  

torch.cuda.Event

torch_npu.npu.Event

是

  

torch.cuda.Event.elapsed_time

torch_npu.npu.Event.elapsed_time

是

  

torch.cuda.Event.from_ipc_handle

  

否

  

torch.cuda.Event.ipc_handle

  

否

  

torch.cuda.Event.query

torch_npu.npu.Event.query

是

  

torch.cuda.Event.record

torch_npu.npu.Event.record

是

  

torch.cuda.Event.synchronize

torch_npu.npu.Event.synchronize

     

torch.cuda.Event.wait

torch_npu.npu.Event.wait

是

  

torch.cuda.graph_pool_handle

  

否

  

torch.cuda.CUDAGraph

  

否

  

torch.cuda.CUDAGraph.capture_begin

  

否

  

torch.cuda.CUDAGraph.capture_end

  

否

  

torch.cuda.CUDAGraph.pool

  

否

  

torch.cuda.CUDAGraph.replay

  

否

  

torch.cuda.CUDAGraph.reset

  

否

  

torch.cuda.graph

  

否

  

torch.cuda.make_graphed_callables

  

否

  

torch.cuda.empty_cache

torch_npu.npu.empty_cache

是

  

torch.cuda.list_gpu_processes

  

否

  

torch.cuda.mem_get_info

  

否

  

torch.cuda.memory_stats

torch_npu.npu.memory_stats

是

  

torch.cuda.memory_stats_as_nested_dict

torch_npu.npu.memory_stats_as_nested_dict

     

torch.cuda..reset_accumulated_memory_stats

torch_npu.npu.reset_accumulated_memory_stats

     

torch.cuda.memory_summary

torch_npu.npu.memory_summary

是

  

torch.cuda.memory_snapshot

torch_npu.npu.memory_snapshot

是

  

torch.cuda.memory_allocated

torch_npu.npu.memory_allocated

是

  

torch.cuda.max_memory_allocated

torch_npu.npu.max_memory_allocated

是

  

torch.cuda.reset_max_memory_allocated

torch_npu.npu.reset_max_memory_allocated

是

  

torch.cuda.memory_reserved

torch_npu.npu.memory_reserved

是

  

torch.cuda.max_memory_reserved

torch_npu.npu.max_memory_reserved

是

  

torch.cuda.set_per_process_memory_fraction

torch_npu.npu.set_per_process_memory_fraction

是

  

torch.cuda.memory_cached

torch_npu.npu.memory_cached

是

  

torch.cuda.max_memory_cached

torch_npu.npu.max_memory_cached

是

  

torch.cuda.reset_max_memory_cached

torch_npu.npu.reset_max_memory_cached

是

  

torch.cuda.reset_peak_memory_stats

torch_npu.npu.reset_peak_memory_stats

是

  

torch.cuda.caching_allocator_alloc

torch_npu.npu.caching_allocator_alloc

是

  

torch.cuda.caching_allocator_delete

torch_npu.npu.caching_allocator_delete

是

  

torch.cuda.nvtx.mark

  

否

  

torch.cuda.nvtx.range_push

torch_npu.npu.nvtx.range_push

否

  

torch.cuda.nvtx.range_pop

  

否