#[repr(transparent)]pub struct CUfunction_attribute_enum(pub c_uint);
Expand description
Function properties
Tuple Fields§
§0: c_uint
Implementations§
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_MAX_THREADS_PER_BLOCK: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_MAX_THREADS_PER_BLOCK: CUfunction_attribute_enum
The maximum number of threads per block, beyond which a launch of the function would fail. This number depends on both the function and the device on which the function is currently loaded.
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_SHARED_SIZE_BYTES: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_SHARED_SIZE_BYTES: CUfunction_attribute_enum
The size in bytes of statically-allocated shared memory required by this function. This does not include dynamically-allocated shared memory requested by the user at runtime.
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_CONST_SIZE_BYTES: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_CONST_SIZE_BYTES: CUfunction_attribute_enum
The size in bytes of user-allocated constant memory required by this function.
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_LOCAL_SIZE_BYTES: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_LOCAL_SIZE_BYTES: CUfunction_attribute_enum
The size in bytes of local memory used by each thread of this function.
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_NUM_REGS: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_NUM_REGS: CUfunction_attribute_enum
The number of registers used by each thread of this function.
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_PTX_VERSION: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_PTX_VERSION: CUfunction_attribute_enum
The PTX virtual architecture version for which the function was compiled. This value is the major PTX version * 10 + the minor PTX version, so a PTX version 1.3 function would return the value 13. Note that this may return the undefined value of 0 for cubins compiled prior to CUDA 3.0.
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_BINARY_VERSION: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_BINARY_VERSION: CUfunction_attribute_enum
The binary architecture version for which the function was compiled. This value is the major binary version * 10 + the minor binary version, so a binary version 1.3 function would return the value 13. Note that this will return a value of 10 for legacy cubins that do not have a properly-encoded binary architecture version.
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_CACHE_MODE_CA: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_CACHE_MODE_CA: CUfunction_attribute_enum
The attribute to indicate whether the function has been compiled with user specified option “-Xptxas –dlcm=ca” set .
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_MAX_DYNAMIC_SHARED_SIZE_BYTES: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_MAX_DYNAMIC_SHARED_SIZE_BYTES: CUfunction_attribute_enum
The maximum size in bytes of dynamically-allocated shared memory that can be used by this function. If the user-specified dynamic shared memory size is larger than this value, the launch will fail. See ::cuFuncSetAttribute, ::cuKernelSetAttribute
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_PREFERRED_SHARED_MEMORY_CARVEOUT: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_PREFERRED_SHARED_MEMORY_CARVEOUT: CUfunction_attribute_enum
On devices where the L1 cache and shared memory use the same hardware resources, this sets the shared memory carveout preference, in percent of the total shared memory. Refer to ::CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_MULTIPROCESSOR. This is only a hint, and the driver can choose a different ratio if required to execute the function. See ::cuFuncSetAttribute, ::cuKernelSetAttribute
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_CLUSTER_SIZE_MUST_BE_SET: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_CLUSTER_SIZE_MUST_BE_SET: CUfunction_attribute_enum
If this attribute is set, the kernel must launch with a valid cluster size specified. See ::cuFuncSetAttribute, ::cuKernelSetAttribute
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_REQUIRED_CLUSTER_WIDTH: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_REQUIRED_CLUSTER_WIDTH: CUfunction_attribute_enum
The required cluster width in blocks. The values must either all be 0 or all be positive. The validity of the cluster dimensions is otherwise checked at launch time.
If the value is set during compile time, it cannot be set at runtime. Setting it at runtime will return CUDA_ERROR_NOT_PERMITTED. See ::cuFuncSetAttribute, ::cuKernelSetAttribute
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_REQUIRED_CLUSTER_HEIGHT: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_REQUIRED_CLUSTER_HEIGHT: CUfunction_attribute_enum
The required cluster height in blocks. The values must either all be 0 or all be positive. The validity of the cluster dimensions is otherwise checked at launch time.
If the value is set during compile time, it cannot be set at runtime. Setting it at runtime should return CUDA_ERROR_NOT_PERMITTED. See ::cuFuncSetAttribute, ::cuKernelSetAttribute
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_REQUIRED_CLUSTER_DEPTH: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_REQUIRED_CLUSTER_DEPTH: CUfunction_attribute_enum
The required cluster depth in blocks. The values must either all be 0 or all be positive. The validity of the cluster dimensions is otherwise checked at launch time.
If the value is set during compile time, it cannot be set at runtime. Setting it at runtime should return CUDA_ERROR_NOT_PERMITTED. See ::cuFuncSetAttribute, ::cuKernelSetAttribute
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_NON_PORTABLE_CLUSTER_SIZE_ALLOWED: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_NON_PORTABLE_CLUSTER_SIZE_ALLOWED: CUfunction_attribute_enum
Whether the function can be launched with non-portable cluster size. 1 is allowed, 0 is disallowed. A non-portable cluster size may only function on the specific SKUs the program is tested on. The launch might fail if the program is run on a different hardware platform.
CUDA API provides cudaOccupancyMaxActiveClusters to assist with checking whether the desired size can be launched on the current device.
Portable Cluster Size
A portable cluster size is guaranteed to be functional on all compute capabilities higher than the target compute capability. The portable cluster size for sm_90 is 8 blocks per cluster. This value may increase for future compute capabilities.
The specific hardware unit may support higher cluster sizes that’s not guaranteed to be portable. See ::cuFuncSetAttribute, ::cuKernelSetAttribute
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_CLUSTER_SCHEDULING_POLICY_PREFERENCE: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_CLUSTER_SCHEDULING_POLICY_PREFERENCE: CUfunction_attribute_enum
The block scheduling policy of a function. The value type is CUclusterSchedulingPolicy / cudaClusterSchedulingPolicy. See ::cuFuncSetAttribute, ::cuKernelSetAttribute
Source§impl CUfunction_attribute_enum
impl CUfunction_attribute_enum
Sourcepub const CU_FUNC_ATTRIBUTE_MAX: CUfunction_attribute_enum
pub const CU_FUNC_ATTRIBUTE_MAX: CUfunction_attribute_enum
The block scheduling policy of a function. The value type is CUclusterSchedulingPolicy / cudaClusterSchedulingPolicy. See ::cuFuncSetAttribute, ::cuKernelSetAttribute
Trait Implementations§
Source§impl Clone for CUfunction_attribute_enum
impl Clone for CUfunction_attribute_enum
Source§fn clone(&self) -> CUfunction_attribute_enum
fn clone(&self) -> CUfunction_attribute_enum
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more