Как восстановить ошибки CUDA при использовании cudaLaunchHostFunc вместо cudaStreamAddCallback - PullRequest
1 голос
/ 04 июня 2019

На странице документации для cudaStreamAddCallback говорится, что она "предназначена для возможного устаревания и удаления" и вместо нее следует использовать cudaLaunchHostFunc. Тем не менее, документация для cudaLaunchHostFunc говорит, что функциям хоста не разрешается делать какие-либо вызовы CUDA. Обратный вызов для cudaLaunchHostFunc также имеет тип

typedef void (CUDART_CB *cudaHostFn_t)(void *userData);

вместо

typedef void (CUDART_CB *cudaStreamCallback_t)(cudaStream_t stream, cudaError_t status, void *userData);

, который cudaStreamAddCallBack принимает. Я могу включить информацию о потоке в void* userData, но как мне восстановить, если после присоединения обратного вызова произойдет ошибка?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...