3.6. 设备状态更改

变量

CUDBGResult  ( *CUDBGAPI_st::writeCCRegister )( uint32_t dev, uint32_t sm, uint32_t wp, uint32_t ln, uint32_t val )
写入硬件 CC 寄存器。
CUDBGResult  ( *CUDBGAPI_st::writeGenericMemory )( uint32_t dev, uint32_t sm, uint32_t wp, uint32_t ln, uint64_t addr, const void* buf, uint32_t sz )
将内容写入通用地址空间中的地址。此函数确定给定地址是否属于本地、共享或全局内存窗口。然后,它会考虑到作为输入提供的硬件坐标来访问内存。
CUDBGResult  ( *CUDBGAPI_st::writeGlobalMemory )( uint64_t addr, const void* buf, uint32_t sz )
将内容写入全局地址空间中的地址。如果该地址在多个设备上有效,并且其中一个设备不支持 UVA,则会返回错误。
CUDBGResult  ( *CUDBGAPI_st::writeGlobalMemory31 )( uint32_t dev, uint64_t addr, const void* buf, uint32_t sz )
将内容写入全局内存段中的地址。
CUDBGResult  ( *CUDBGAPI_st::writeGlobalMemory55 )( uint32_t dev, uint32_t sm, uint32_t wp, uint32_t ln, uint64_t addr, const void* buf, uint32_t sz )
将内容写入全局内存段中的地址(Fermi+ 上的整个 40 位 VA)。
CUDBGResult  ( *CUDBGAPI_st::writeLocalMemory )( uint32_t dev, uint32_t sm, uint32_t wp, uint32_t ln, uint64_t addr, const void* buf, uint32_t sz )
将内容写入本地内存段中的地址。
CUDBGResult  ( *CUDBGAPI_st::writeParamMemory )( uint32_t dev, uint32_t sm, uint32_t wp, uint64_t addr, const void* buf, uint32_t sz )
将内容写入参数内存段中的地址。
CUDBGResult  ( *CUDBGAPI_st::writeRegister )( uint32_t dev, uint32_t sm, uint32_t wp, uint32_t ln, uint32_t regno, uint32_t val )
将内容写入硬件寄存器。
CUDBGResult  ( *CUDBGAPI_st::writeSharedMemory )( uint32_t dev, uint32_t sm, uint32_t wp, uint64_t addr, const void* buf, uint32_t sz )
将内容写入共享内存段中的地址。
CUDBGResult  ( *CUDBGAPI_st::writeUniformRegister )( uint32_t dev, uint32_t sm, uint32_t wp, uint32_t regno, uint32_t val )
将内容写入统一寄存器。

变量

CUDBGResult ( *CUDBGAPI_st::writeCCRegister )( uint32_t dev, uint32_t sm, uint32_t wp, uint32_t ln, uint32_t val )

写入硬件 CC 寄存器。始于 CUDA 6.5。

另请参阅

writeConstMemory

writeGenericMemory

writeGlobalMemory

writeParamMemory

writeSharedMemory

writeTextureMemory

writeLocalMemory

writeRegister

writePredicates

参数
dev
- 设备索引
sm
- SM 索引
wp
- warp 索引
ln
- lane 索引
val
- 要写入 CC 寄存器的值
返回值

CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_INVALID_DEVICE, CUDBG_ERROR_INVALID_LANE, CUDBG_ERROR_INVALID_SM, CUDBG_ERROR_INVALID_WARP, CUDBG_ERROR_UNINITIALIZED

CUDBGResult ( *CUDBGAPI_st::writeGenericMemory )( uint32_t dev, uint32_t sm, uint32_t wp, uint32_t ln, uint64_t addr, const void* buf, uint32_t sz )

将内容写入通用地址空间中的地址。此函数确定给定地址是否属于本地、共享或全局内存窗口。然后,它会考虑到作为输入提供的硬件坐标来访问内存。始于 CUDA 6.0。

另请参阅

writeParamMemory

writeSharedMemory

writeLocalMemory

writeRegister

参数
dev
- 设备索引
sm
- SM 索引
wp
- warp 索引
ln
- lane 索引
addr
- 内存地址
buf
- 缓冲区
sz
返回值

CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_INVALID_DEVICE, CUDBG_ERROR_INVALID_LANE, CUDBG_ERROR_INVALID_SM, CUDBG_ERROR_INVALID_WARP, CUDBG_ERROR_UNINITIALIZED, CUDBG_ERROR_MEMORY_MAPPING_FAILED, CUDBG_ERROR_ADDRESS_NOT_IN_DEVICE_MEM

CUDBGResult ( *CUDBGAPI_st::writeGlobalMemory )( uint64_t addr, const void* buf, uint32_t sz )

将内容写入全局地址空间中的地址。如果该地址在多个设备上有效,并且其中一个设备不支持 UVA,则会返回错误。始于 CUDA 6.0。

另请参阅

writeParamMemory

writeSharedMemory

writeLocalMemory

writeRegister

参数
addr
- 内存地址
buf
- 缓冲区
sz
返回值

CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_INVALID_DEVICE, CUDBG_ERROR_UNINITIALIZED, CUDBG_ERROR_MEMORY_MAPPING_FAILED, CUDBG_ERROR_INVALID_MEMORY_ACCESS, CUDBG_ERROR_ADDRESS_NOT_IN_DEVICE_MEM CUDBG_ERROR_AMBIGUOUS_MEMORY_ADDRESS_

CUDBGResult ( *CUDBGAPI_st::writeGlobalMemory31 )( uint32_t dev, uint64_t addr, const void* buf, uint32_t sz )

将内容写入全局内存段中的地址。始于 CUDA 3.0。

另请参阅

writeParamMemory

writeSharedMemory

writeLocalMemory

writeRegister

参数
dev
- 设备索引
addr
- 内存地址
buf
- 缓冲区
sz
- 缓冲区大小
返回值

CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_INVALID_DEVICE, CUDBG_ERROR_INVALID_LANE, CUDBG_ERROR_INVALID_SM, CUDBG_ERROR_INVALID_WARP, CUDBG_ERROR_UNINITIALIZED, CUDBG_ERROR_MEMORY_MAPPING_FAILED

CUDBGResult ( *CUDBGAPI_st::writeGlobalMemory55 )( uint32_t dev, uint32_t sm, uint32_t wp, uint32_t ln, uint64_t addr, const void* buf, uint32_t sz )

将内容写入全局内存段中的地址(Fermi+ 上的整个 40 位 VA)。始于 CUDA 3.2。

另请参阅

writeParamMemory

writeSharedMemory

writeLocalMemory

writeRegister

参数
dev
- 设备索引
sm
- SM 索引
wp
- warp 索引
ln
- lane 索引
addr
- 内存地址
buf
- 缓冲区
sz
- 缓冲区大小
返回值

CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_INVALID_DEVICE, CUDBG_ERROR_INVALID_LANE, CUDBG_ERROR_INVALID_SM, CUDBG_ERROR_INVALID_WARP, CUDBG_ERROR_UNINITIALIZED, CUDBG_ERROR_MEMORY_MAPPING_FAILED, CUDBG_ERROR_ADDRESS_NOT_IN_DEVICE_MEM

CUDBGResult ( *CUDBGAPI_st::writeLocalMemory )( uint32_t dev, uint32_t sm, uint32_t wp, uint32_t ln, uint64_t addr, const void* buf, uint32_t sz )

将内容写入本地内存段中的地址。始于 CUDA 3.0。

另请参阅

writeGenericMemory

writeParamMemory

writeSharedMemory

writeRegister

参数
dev
- 设备索引
sm
- SM 索引
wp
- warp 索引
ln
- lane 索引
addr
- 内存地址
buf
- 缓冲区
sz
- 缓冲区大小
返回值

CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_INVALID_DEVICE, CUDBG_ERROR_INVALID_LANE, CUDBG_ERROR_INVALID_SM, CUDBG_ERROR_INVALID_WARP, CUDBG_ERROR_UNINITIALIZED, CUDBG_ERROR_MEMORY_MAPPING_FAILED

CUDBGResult ( *CUDBGAPI_st::writeParamMemory )( uint32_t dev, uint32_t sm, uint32_t wp, uint64_t addr, const void* buf, uint32_t sz )

将内容写入参数内存段中的地址。始于 CUDA 3.0。

另请参阅

writeGenericMemory

writeSharedMemory

writeLocalMemory

writeRegister

参数
dev
- 设备索引
sm
- SM 索引
wp
- warp 索引
addr
- 内存地址
buf
- 缓冲区
sz
- 缓冲区大小
返回值

CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_INVALID_DEVICE, CUDBG_ERROR_INVALID_SM, CUDBG_ERROR_INVALID_WARP, CUDBG_ERROR_UNINITIALIZED, CUDBG_ERROR_MEMORY_MAPPING_FAILED

CUDBGResult ( *CUDBGAPI_st::writeRegister )( uint32_t dev, uint32_t sm, uint32_t wp, uint32_t ln, uint32_t regno, uint32_t val )

将内容写入硬件寄存器。始于 CUDA 3.0。

另请参阅

writeGenericMemory

writeParamMemory

writeSharedMemory

writeLocalMemory

参数
dev
- 设备索引
sm
- SM 索引
wp
- warp 索引
ln
- lane 索引
regno
- 寄存器索引
val
- 缓冲区
返回值

CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_INVALID_DEVICE, CUDBG_ERROR_INVALID_LANE, CUDBG_ERROR_INVALID_SM, CUDBG_ERROR_INVALID_WARP, CUDBG_ERROR_UNINITIALIZED

CUDBGResult ( *CUDBGAPI_st::writeSharedMemory )( uint32_t dev, uint32_t sm, uint32_t wp, uint64_t addr, const void* buf, uint32_t sz )

将内容写入共享内存段中的地址。始于 CUDA 3.0。

另请参阅

writeGenericMemory

writeParamMemory

writeLocalMemory

writeRegister

参数
dev
- 设备索引
sm
- SM 索引
wp
- warp 索引
addr
- 内存地址
buf
- 缓冲区
sz
- 缓冲区大小
返回值

CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_INVALID_DEVICE, CUDBG_ERROR_INVALID_SM, CUDBG_ERROR_INVALID_WARP, CUDBG_ERROR_UNINITIALIZED, CUDBG_ERROR_MEMORY_MAPPING_FAILED

CUDBGResult ( *CUDBGAPI_st::writeUniformRegister )( uint32_t dev, uint32_t sm, uint32_t wp, uint32_t regno, uint32_t val )

将内容写入统一寄存器。始于 CUDA 10.0。

另请参阅

writeRegister

readUniformRegisterRange

参数
dev
- 设备索引
sm
- SM 索引
wp
- warp 索引
regno
- 寄存器索引
val
- 缓冲区
返回值

CUDBG_SUCCESS, CUDBG_ERROR_INVALID_ARGS, CUDBG_ERROR_INVALID_DEVICE, CUDBG_ERROR_INVALID_SM, CUDBG_ERROR_INVALID_WARP, CUDBG_ERROR_UNINITIALIZED