@@ -930,6 +930,285 @@ def multicast_supported(self) -> bool:
930930 """
931931 return bool (self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_MULTICAST_SUPPORTED ))
932932
933+ @property
934+ def surface_alignment (self ) -> int :
935+ """
936+ int: Surface alignment requirement in bytes.
937+ """
938+ return self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_SURFACE_ALIGNMENT )
939+
940+ @property
941+ def async_engine_count (self ) -> int :
942+ """
943+ int: Number of asynchronous engines.
944+ """
945+ return self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_ASYNC_ENGINE_COUNT )
946+
947+ @property
948+ def can_tex2d_gather (self ) -> bool :
949+ """
950+ bool: True if device supports 2D texture gather operations, False if not.
951+ """
952+ return bool (self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_CAN_TEX2D_GATHER ))
953+
954+ @property
955+ def maximum_texture2d_gather_width (self ) -> int :
956+ """
957+ int: Maximum 2D texture gather width.
958+ """
959+ return self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_WIDTH )
960+
961+ @property
962+ def maximum_texture2d_gather_height (self ) -> int :
963+ """
964+ int: Maximum 2D texture gather height.
965+ """
966+ return self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_HEIGHT )
967+
968+ @property
969+ def stream_priorities_supported (self ) -> bool :
970+ """
971+ bool: True if device supports stream priorities, False if not.
972+ """
973+ return bool (
974+ self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_STREAM_PRIORITIES_SUPPORTED )
975+ )
976+
977+
978+ @property
979+ def cooperative_multi_device_launch (self ) -> bool :
980+ """
981+ bool: True if device supports cooperative multi-device launch, False if not.
982+ """
983+ return bool (
984+ self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_COOPERATIVE_MULTI_DEVICE_LAUNCH )
985+ )
986+
987+ @property
988+ def can_flush_remote_writes (self ) -> bool :
989+ """
990+ bool: True if device can flush remote writes, False if not.
991+ """
992+ return bool (self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_CAN_FLUSH_REMOTE_WRITES ))
993+
994+ @property
995+ def host_register_supported (self ) -> bool :
996+ """
997+ bool: True if device supports host memory registration, False if not.
998+ """
999+ return bool (self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_HOST_REGISTER_SUPPORTED ))
1000+
1001+ @property
1002+ def virtual_address_management_supported (self ) -> bool :
1003+ """
1004+ bool: True if device supports virtual address management, False if not.
1005+ """
1006+ return bool (
1007+ self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_VIRTUAL_ADDRESS_MANAGEMENT_SUPPORTED )
1008+ )
1009+
1010+ @property
1011+ def timeline_semaphore_interop_supported (self ) -> bool :
1012+ """
1013+ bool: True if device supports timeline semaphore interop, False if not.
1014+ """
1015+ return bool (
1016+ self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_TIMELINE_SEMAPHORE_INTEROP_SUPPORTED )
1017+ )
1018+
1019+ @property
1020+ def cluster_launch (self ) -> bool :
1021+ """
1022+ bool: True if device supports cluster launch, False if not.
1023+ """
1024+ return bool (self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_CLUSTER_LAUNCH ))
1025+
1026+ @property
1027+ def can_use_64_bit_stream_mem_ops (self ) -> bool :
1028+ """
1029+ bool: True if device supports 64-bit stream memory operations, False if not.
1030+ """
1031+ return bool (
1032+ self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_CAN_USE_64_BIT_STREAM_MEM_OPS )
1033+ )
1034+
1035+ @property
1036+ def can_use_stream_wait_value_nor (self ) -> bool :
1037+ """
1038+ bool: True if device supports stream wait value NOR operations, False if not.
1039+ """
1040+ return bool (
1041+ self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_WAIT_VALUE_NOR )
1042+ )
1043+
1044+ @property
1045+ def dma_buf_supported (self ) -> bool :
1046+ """
1047+ bool: True if device supports DMA buffer operations, False if not.
1048+ """
1049+ return bool (self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_DMA_BUF_SUPPORTED ))
1050+
1051+ @property
1052+ def ipc_event_supported (self ) -> bool :
1053+ """
1054+ bool: True if device supports IPC event operations, False if not.
1055+ """
1056+ return bool (self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_IPC_EVENT_SUPPORTED ))
1057+
1058+ @property
1059+ def mem_sync_domain_count (self ) -> int :
1060+ """
1061+ int: Number of memory synchronization domains.
1062+ """
1063+ return self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_MEM_SYNC_DOMAIN_COUNT )
1064+
1065+ @property
1066+ def tensor_map_access_supported (self ) -> bool :
1067+ """
1068+ bool: True if device supports tensor map access, False if not.
1069+ """
1070+ return bool (
1071+ self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_TENSOR_MAP_ACCESS_SUPPORTED )
1072+ )
1073+
1074+ @property
1075+ def handle_type_fabric_supported (self ) -> bool :
1076+ """
1077+ bool: True if device supports fabric handle type, False if not.
1078+ """
1079+ return bool (
1080+ self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_FABRIC_SUPPORTED )
1081+ )
1082+
1083+ @property
1084+ def unified_function_pointers (self ) -> bool :
1085+ """
1086+ bool: True if device supports unified function pointers, False if not.
1087+ """
1088+ return bool (self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_UNIFIED_FUNCTION_POINTERS ))
1089+
1090+ @property
1091+ def mps_enabled (self ) -> bool :
1092+ """
1093+ bool: True if MPS (Multi-Process Service) is enabled, False if not.
1094+ """
1095+ return bool (self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_MPS_ENABLED ))
1096+
1097+ @property
1098+ def host_numa_id (self ) -> int :
1099+ """
1100+ int: Host NUMA node ID.
1101+ """
1102+ return self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_HOST_NUMA_ID )
1103+
1104+ @property
1105+ def d3d12_cig_supported (self ) -> bool :
1106+ """
1107+ bool: True if device supports D3D12 CIG (Compute Interop Graphics), False if not.
1108+ """
1109+ return bool (self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_D3D12_CIG_SUPPORTED ))
1110+
1111+ @property
1112+ def mem_decompress_algorithm_mask (self ) -> int :
1113+ """
1114+ int: Memory decompression algorithm mask.
1115+ """
1116+ return self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_MEM_DECOMPRESS_ALGORITHM_MASK )
1117+
1118+ @property
1119+ def mem_decompress_maximum_length (self ) -> int :
1120+ """
1121+ int: Maximum length for memory decompression.
1122+ """
1123+ return self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_MEM_DECOMPRESS_MAXIMUM_LENGTH )
1124+
1125+ @property
1126+ def vulkan_cig_supported (self ) -> bool :
1127+ """
1128+ bool: True if device supports Vulkan CIG (Compute Interop Graphics), False if not.
1129+ """
1130+ return bool (self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_VULKAN_CIG_SUPPORTED ))
1131+
1132+ @property
1133+ def gpu_pci_device_id (self ) -> int :
1134+ """
1135+ int: GPU PCI device ID.
1136+ """
1137+ return self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_GPU_PCI_DEVICE_ID )
1138+
1139+ @property
1140+ def gpu_pci_subsystem_id (self ) -> int :
1141+ """
1142+ int: GPU PCI subsystem ID.
1143+ """
1144+ return self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_GPU_PCI_SUBSYSTEM_ID )
1145+
1146+ @property
1147+ def host_numa_virtual_memory_management_supported (self ) -> bool :
1148+ """
1149+ bool: True if device supports host NUMA virtual memory management, False if not.
1150+ """
1151+ return bool (
1152+ self ._get_cached_attribute (
1153+ driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_HOST_NUMA_VIRTUAL_MEMORY_MANAGEMENT_SUPPORTED
1154+ )
1155+ )
1156+
1157+ @property
1158+ def host_numa_memory_pools_supported (self ) -> bool :
1159+ """
1160+ bool: True if device supports host NUMA memory pools, False if not.
1161+ """
1162+ return bool (
1163+ self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_HOST_NUMA_MEMORY_POOLS_SUPPORTED )
1164+ )
1165+
1166+ @property
1167+ def host_numa_multinode_ipc_supported (self ) -> bool :
1168+ """
1169+ bool: True if device supports host NUMA multinode IPC, False if not.
1170+ """
1171+ return bool (
1172+ self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_HOST_NUMA_MULTINODE_IPC_SUPPORTED )
1173+ )
1174+
1175+ @property
1176+ def host_memory_pools_supported (self ) -> bool :
1177+ """
1178+ bool: True if device supports host memory pools, False if not.
1179+ """
1180+ return bool (self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_HOST_MEMORY_POOLS_SUPPORTED ))
1181+
1182+ @property
1183+ def host_virtual_memory_management_supported (self ) -> bool :
1184+ """
1185+ bool: True if device supports host virtual memory management, False if not.
1186+ """
1187+ return bool (
1188+ self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_HOST_VIRTUAL_MEMORY_MANAGEMENT_SUPPORTED )
1189+ )
1190+
1191+ @property
1192+ def host_alloc_dma_buf_supported (self ) -> bool :
1193+ """
1194+ bool: True if device supports host allocation DMA buffer operations, False if not.
1195+ """
1196+ return bool (
1197+ self ._get_cached_attribute (driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_HOST_ALLOC_DMA_BUF_SUPPORTED )
1198+ )
1199+
1200+ @property
1201+ def only_partial_host_native_atomic_supported (self ) -> bool :
1202+ """
1203+ bool: True if device supports only partial host native atomic operations, False if not.
1204+ """
1205+ return bool (
1206+ self ._get_cached_attribute (
1207+ driver .CUdevice_attribute .CU_DEVICE_ATTRIBUTE_ONLY_PARTIAL_HOST_NATIVE_ATOMIC_SUPPORTED
1208+ )
1209+ )
1210+
1211+
9331212
9341213_SUCCESS = driver .CUresult .CUDA_SUCCESS
9351214_INVALID_CTX = driver .CUresult .CUDA_ERROR_INVALID_CONTEXT
0 commit comments