Estoy en una situación real. Por favor ayuda. Es urgente.No se puede matar el kernel defectuoso que se ejecuta en la GPU NVIDIA
Tengo un proceso de host que genera múltiples hilos de host (CPU) (pthreads). Estos hilos a su vez llaman al núcleo CUDA. Estos núcleos CUDA están escritos por usuarios externos. Por lo tanto, podría ser que los kernels malos ingresen al bucle infinito. Para superar esto, he puesto un tiempo de espera de 2 minutos que matará al hilo de la CPU correspondiente.
¿Matar el hilo de la CPU también matará al kernel que se ejecuta en la GPU? En cuanto a lo que he probado, no es así.
¿Cómo puedo matar a todos los hilos que se ejecutan actualmente en la GPU?
Editar: La razón por la que estoy usando subprocesos de CPU que llaman al núcleo es porque, el servidor tiene dos GPU de Tesla. Entonces, el hilo programará el kernel en el dispositivo GPU alternativamente.
Gracias, Arvind
Necesito enviar kernels separados a la GPU, porque el contexto varía. Esa es la información de inicialización puede variar. Acerca del uso de hilos ... La plataforma se diseñó teniendo en cuenta la CPU. Pero luego lo reutilizamos para la GPU también. No creo que debería importar El programador de la GPU pondrá en cola las peticiones del kernel (Eso es lo que creo, podría estar equivocado). – arvindkgs
Lo probó, sí, eso es lo que hace ... ¿podría averiguar qué le sucedió? ¿En qué plataforma estás? (Linux, Windows o Mac?) – Nils
No, aún no. Estoy trabajando en Linux (centos 5.4) – arvindkgs