cudaMemset () - он устанавливает байты или целые числа?
Отонлайн документация:
cudaError_t cudaMemset (void * devPtr, int value, size_t count )
Заполняет первые байты счетчика области памяти, на которую указывает devPtr, константойбайт значение значение.
Параметры: devPtr - Указатель на значение памяти устройства - Значение, устанавливаемое для каждогобайт указанного количества памяти - Размер вбайтов установить
Это описание неt представляется правильным как:
int *dJunk;
cudaMalloc((void**)&dJunk, 32*(sizeof(int));
cudaMemset(dJunk, 0x12, 32);
установит все 32 целых числа в 0x12, а не 0x12121212. (Ints против Byte)
Описание говорит о настройке байтов. Количество и значение описываются в байтах. Счетчик уведомлений имеет типsize_tи значение имеет тип int. т.е. установить размер байта в int-значение.
cudaMemset () не упоминается в руководстве по прогам. Я должен предположить, что поведение, которое я вижу, правильное, а документация плохая.
Есть ли лучший источник документации там? (Куда?)
Поддерживаются ли другие типы? то естьfloat *dJunk;
Работа? Другие?