cudaMallocPitch «Неверные аргументы», несмотря на то, что вы копируете руководство?

Я с радостью игнорировал это некоторое время, но теперь это стало большой проблемой — надеюсь, вы, ребята, сможете мне помочь.

Я звоню cudaMallocPitch, но что бы я ни пытался, он продолжает давать мне красное подчеркивание и ошибку «неверные аргументы». Даже когда я копирую исходный код из руководства по программированию на Nvidia CUDA C, он все равно выдает ошибку. Я совершенно новичок в CUDA, поэтому, пожалуйста, не стесняйтесь указывать на то, что, по вашему мнению, будет очевидным, что может стать причиной проблемы.

Вот точный код, на который я ссылаюсь:

int width = 64, height = 64;
float* devPtr;
size_t pitch;
cudaMallocPitch(&devPtr, pitch,
width * sizeof(float), height);

Любые комментарии приветствуются, ура.

1

Решение

Второй параметр должен быть size_t*, но вы передаете size_t, Попробуйте это вместо этого:

cudaMallocPitch(&devPtr, &pitch, width * sizeof(float), height);

Также обратите внимание, что последний тип параметра также size_t, возможно height было бы лучше как size_t,

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]