【发布时间】:2012-11-03 10:30:23
【问题描述】:
来自online 文档:
cudaError_t cudaMemset (void * devPtr, int value, size_t count )
用常量byte值填充devPtr指向的内存区域的第一个count字节。
参数: devPtr - 指向设备内存的指针 value - 为指定内存的每个 byte 设置的值 count - 要设置的 字节 大小
此描述似乎不正确:
int *dJunk;
cudaMalloc((void**)&dJunk, 32*(sizeof(int));
cudaMemset(dJunk, 0x12, 32);
会将所有 32 个整数设置为 0x12,而不是 0x12121212。 (整数与字节)
描述谈到设置字节。 Count 和 Value 以字节为单位进行描述。注意 count 是 size_t 类型,value 是 int 类型。即将字节大小设置为 int 值。
cudaMemset() 在 prog 指南中没有提到。 我必须假设我看到的行为是正确的,并且文档很糟糕。
那里有更好的文档来源吗? (在哪里?)
是否支持其他类型?即float *dJunk; 会工作吗?其他人?
【问题讨论】: