2. Data Structures
Here are the data structures with brief descriptions:
- Sanitizer_BatchMemopData
- Data passed into a batch memop callback function
- Sanitizer_CallbackData
- Data passed into a runtime or driver API callback function
- Sanitizer_LaunchData
- Data passed into a launch callback function
- Sanitizer_MemcpyData
- Data passed into a memcpy callback function
- Sanitizer_MemsetData
- Data passed into a memset callback function
- Sanitizer_ResourceContextData
- Data passed into a context resource callback function
- Sanitizer_ResourceMemoryData
- Data passed into a memory resource callback function
- Sanitizer_ResourceModuleData
- Data passed into a module resource callback function
- Sanitizer_ResourceStreamData
- Data passed into a stream resource callback function
- Sanitizer_SynchronizeData
- Data passed into a synchronization callback function
2.1. Sanitizer_BatchMemopData Struct Reference
[Sanitizer Callback API]
Data passed into a batch memop callback function as the cbdata argument to Sanitizer_CallbackFunc. The cbdata will be this type for domain equal to SANITIZER_CB_DOMAIN_BATCH_MEMOP. The callback data is only valid within the invocation of the callback function that is passed the data. If you need to retain some data for use outside of the callback, you must make a copy of it.
Public Variables
Variables
- uint64_t Sanitizer_BatchMemopData::address [inherited]
-
The address to be written.
- CUcontext Sanitizer_BatchMemopData::context [inherited]
-
The context where the allocation is located
- CUstream Sanitizer_BatchMemopData::stream [inherited]
-
The stream where the batch memop is executed.
- Sanitizer_BatchMemopTypeSanitizer_BatchMemopData::type [inherited]
-
Type of batch memory operation.
- uint64_t Sanitizer_BatchMemopData::value [inherited]
-
The value to be written.
2.2. Sanitizer_CallbackData Struct Reference
[Sanitizer Callback API]
Data passed into a runtime or driver API callback function as the cbdata argument to Sanitizer_CallbackFunc. The cbdata will be this type for domain equal to SANITIZER_CB_DOMAIN_DRIVER_API or SANITIZER_CB_DOMAIN_RUNTIME_API. The callback data is valid only within the invocation of the callback function that is passed the data. If you need to retain some data for use outside of the callback, you must make of a copy of that data. For example, if you make a shallow copy of Sanitizer_CallbackData within a callback, you cannot dereference functionParams outside of that callback to access the function parameters. functionName is an exception: the string pointed to by functionName is a global constant and so may be accessed outside of the callback.
Public Variables
- Sanitizer_ApiCallbackSite callbackSite
- CUcontext context
- const char * functionName
- const void * functionParams
- const void * functionReturnValue
- const char * symbolName
Variables
- Sanitizer_ApiCallbackSiteSanitizer_CallbackData::callbackSite [inherited]
-
Point in the runtime or driver function from where the callback was issued.
- CUcontext Sanitizer_CallbackData::context [inherited]
-
Driver context current to the thread, or null if no context is current. This value can change from the entry to exit callback of a runtime API function if the runtime initialized a context.
- const char * Sanitizer_CallbackData::functionName [inherited]
-
Name of the runtime or driver API function which issued the callback. This string is a global constant and so may be accessed outside of the callback.
- const void * Sanitizer_CallbackData::functionParams [inherited]
-
Pointer to the arguments passed to the runtime or driver API call. See generated_cuda_runtime_api_meta.h and generated_cuda_meta.h for structure definitions for the parameters for each runtime and driver API function.
- const void * Sanitizer_CallbackData::functionReturnValue [inherited]
-
Pointer to the return value of the runtime or driver API call. This field is only valid within the SANITIZER_API_EXIT callback. For a runtime API functionReturnValue points to a cudaError_t. For a driver API functionReturnValue points to a CUresult.
- const char * Sanitizer_CallbackData::symbolName [inherited]
-
Name of the symbol operated on by the runtime or driver API function which issued the callback. This entry is valid only for driver and runtime launch callbacks, where it returns the name of the kernel.
2.3. Sanitizer_LaunchData Struct Reference
[Sanitizer Callback API]
Data passed into a launch callback function as the cbdata argument to Sanitizer_CallbackFunc. The cbdata will be this type for domain equal to SANITIZER_CB_DOMAIN_LAUNCH. The callback data is only valid within the invocation of the callback function that is passed the data. If you need to retain some data for use outside of the callback, you must make a copy of it.
Public Variables
- CUcontext context
- CUfunction function
- const char * functionName
- uint32_t gridDim_x
- uint64_t gridId
- CUmodule module
- CUstream stream
Variables
- CUcontext Sanitizer_LaunchData::context [inherited]
-
The context where the grid is launched.
- CUfunction Sanitizer_LaunchData::function [inherited]
-
The function of the grid launch.
- const char * Sanitizer_LaunchData::functionName [inherited]
-
The name of the launched function.
- uint32_t Sanitizer_LaunchData::gridDim_x [inherited]
-
Launch properties of the grid. These values are only valid for SANITIZER_CBID_LAUNCH_BEGIN callback
- uint64_t Sanitizer_LaunchData::gridId [inherited]
-
Unique identifier of the grid launch.
- CUmodule Sanitizer_LaunchData::module [inherited]
-
The module containing the grid code.
- CUstream Sanitizer_LaunchData::stream [inherited]
-
The stream where the grid is launched.
2.4. Sanitizer_MemcpyData Struct Reference
[Sanitizer Callback API]
Data passed into a launch callback function as the cbdata argument to Sanitizer_CallbackFunc. The cbdata will be this type for domain equal to SANITIZER_CB_DOMAIN_MEMCPY. The callback data is only valid within the invocation of the callback function that is passed the data. If you need to retain some data for use outside of the callback, you must make a copy of it.
Public Variables
- uint64_t dstAddress
- CUcontext dstContext
- uint32_t isAsync
- uint64_t size
- uint64_t srcAddress
- CUcontext srcContext
Variables
- uint64_t Sanitizer_MemcpyData::dstAddress [inherited]
-
The destination allocation address.
- CUcontext Sanitizer_MemcpyData::dstContext [inherited]
-
The context where the destination allocation is located
- uint32_t Sanitizer_MemcpyData::isAsync [inherited]
-
Boolean value indicating if the transfer is asynchronous.
- uint64_t Sanitizer_MemcpyData::size [inherited]
-
Size of the transfer in bytes.
- uint64_t Sanitizer_MemcpyData::srcAddress [inherited]
-
The source allocation address.
- CUcontext Sanitizer_MemcpyData::srcContext [inherited]
-
The context where the source allocation is located
2.5. Sanitizer_MemsetData Struct Reference
[Sanitizer Callback API]
Data passed into a launch callback function as the cbdata argument to Sanitizer_CallbackFunc. The cbdata will be this type for domain equal to SANITIZER_CB_DOMAIN_MEMSET. The callback data is only valid within the invocation of the callback function that is passed the data. If you need to retain some data for use outside of the callback, you must make a copy of it.
Public Variables
Variables
- uint64_t Sanitizer_MemsetData::address [inherited]
-
The address of the memset start.
- CUcontext Sanitizer_MemsetData::context [inherited]
-
The context where the allocation is located.
- uint32_t Sanitizer_MemsetData::isAsync [inherited]
-
Boolean value indicating if the transfer is asynchronous.
- uint32_t Sanitizer_MemsetData::value [inherited]
-
Value to be written.
- uint64_t Sanitizer_MemsetData::width [inherited]
-
Memset size configuration.
2.6. Sanitizer_ResourceContextData Struct Reference
[Sanitizer Callback API]
Data passed into a context resource callback function as the cbdata argument to Sanitizer_CallbackFunc. The cbdata will be this type for domain equal to SANITIZER_CB_DOMAIN_RESOURCE and cbid equal to SANITIZER_CBID_RESOURCE_CONTEXT_CREATION_STARTING, SANITIZER_CBID_RESOURCE_CONTEXT_CREATION_FINISHED, SANITIZER_CBID_RESOURCE_CONTEXT_DESTROY_STARTING or SANITIZER_CBID_RESOURCE_CONTEXT_DESTROY_FINISHED. The callback data is only valid within the invocation of the callback function that is passed the data. If you need to retain some data for use outside of the callback, you must make a copy of it.
Public Variables
Variables
- CUcontext Sanitizer_ResourceContextData::context [inherited]
-
The context being created or destroyed.
- CUdevice Sanitizer_ResourceContextData::device [inherited]
-
The device on which the context is being created or destroyed. This field is only valid for SANITIZER_CBID_RESOURCE_CONTEXT_CREATION_* callbacks
2.7. Sanitizer_ResourceMemoryData Struct Reference
[Sanitizer Callback API]
Data passed into a memory resource callback function as the cbdata argument to Sanitizer_CallbackFunc. The cbdata will be this type for domain equal to SANITIZER_CB_DOMAIN_RESOURCE and cbid equal to SANITIZER_CBID_RESOURCE_DEVICE_MEMORY_ALLOC, SANITIZER_CBID_RESOURCE_DEVICE_MEMORY_FREE, SANITIZER_CBID_RESOURCE_HOST_MEMORY_ALLOC, SANITIZER_CBID_RESOURCE_HOST_MEMORY_FREE, SANITIZER_CBID_RESOURCE_SURFACE_OBJECT_CREATED or SANITIZER_CBID_RESOURCE_SURFACE_OBJECT_DESTROY. The callback data is only valid within the invocation of the callback function that is passed the data. If you need to retain some data for use outside of the callback, you must make a copy of it.
Public Variables
Variables
- uint64_t Sanitizer_ResourceMemoryData::address [inherited]
-
Address of the allocation being created or destroyed.
- CUcontext Sanitizer_ResourceMemoryData::context [inherited]
-
Context containing the allocation being created or destroyed.
- uint64_t Sanitizer_ResourceMemoryData::flags [inherited]
-
Allocation details: use Sanitizer_ResourceMemoryFlags to interpret this field.
- uint64_t Sanitizer_ResourceMemoryData::size [inherited]
-
Size of the allocation being created or destroyed.
2.8. Sanitizer_ResourceModuleData Struct Reference
[Sanitizer Callback API]
Data passed into a module resource callback function as the cbdata argument to Sanitizer_CallbackFunc. The cbdata will be this type for domain equal to SANITIZER_CB_DOMAIN_RESOURCE and cbid equal to SANITIZER_CBID_RESOURCE_MODULE_LOADED or SANITIZER_CBID_RESOURCE_MODULE_UNLOAD_STARTING. The callback data is only valid within the invocation of the callback function that is passed the data. If you need to retain some data for use outside of the callback, you must make a copy of it.
Public Variables
Variables
- CUcontext Sanitizer_ResourceModuleData::context [inherited]
-
The context containing the module being loaded or unloaded.
- size_t Sanitizer_ResourceModuleData::cubinSize [inherited]
-
The size of the cubin.
- CUmodule Sanitizer_ResourceModuleData::module [inherited]
-
The module being loaded or unloaded.
- const char * Sanitizer_ResourceModuleData::pCubin [inherited]
-
Pointer to the associated cubin.
2.9. Sanitizer_ResourceStreamData Struct Reference
[Sanitizer Callback API]
Data passed into a stream resource callback function as the cbdata argument to Sanitizer_CallbackFunc. The cbdata will be this type for domain equal to SANITIZER_CB_DOMAIN_RESOURCE and cbid equal to SANITIZER_CBID_RESOURCE_STREAM_CREATED or SANITIZER_CBID_RESOURCE_STREAM_DESTROY_STARTING. The callback data is only valid within the invocation of the callback function that is passed the data. If you need to retain some data for use outside of the callback, you must make a copy of it.
Public Variables
Variables
- CUcontext Sanitizer_ResourceStreamData::context [inherited]
-
The context containing the stream being created or destroyed.
- CUstream Sanitizer_ResourceStreamData::stream [inherited]
-
The stream being created or destroyed.
2.10. Sanitizer_SynchronizeData Struct Reference
[Sanitizer Callback API]
Data passed into a synchronization callback function as the cbdata argument to Sanitizer_CallbackFunc. The cbdata will be this type for domain equal to SANITIZER_CB_DOMAIN_SYNCHRONIZE. The callback data is only valid within the invocation of the callback function that is passed the data. If you need to retain some data for use outside of the callback, you must make a copy of it.
Public Variables
Variables
- CUcontext Sanitizer_SynchronizeData::context [inherited]
-
For SANITIZER_CBID_SYNCHRONIZE_CONTEXT_SYNCHRONIZED, this is the context being synchronized. For SANITIZER_CBID_SYNCHRONIZE_STREAM_SYNCHRONIZED, this is the context of the stream being synchronized.
- CUstream Sanitizer_SynchronizeData::stream [inherited]
-
This field is only valid for SANITIZER_CBID_SYNCHRONIZE_STREAM_SYNCHRONIZED. This is the stream being synchronized.