Tengo una aplicación que resuelve un sistema de ecuaciones en CUDA, estoy seguro de que cada hilo puede encontrar hasta 4 soluciones, pero ¿cómo puedo copiar y luego volver al host?¿Cómo juntar datos de hilos en CUDA?
Estoy pasando una gran variedad con suficiente espacio para todas las soluciones de threads store 4 (4 dobles para cada solución) y otra con la cantidad de soluciones por subproceso, sin embargo es una solución ingenua y es el cuello de botella actual de mi kernel
Realmente me gusta optimizar esto. El principal problema es concatenar una cantidad variable de soluciones por hilo en una única matriz.
Sería mucho más fácil ayudar si supiera algo más sobre su programa. que yo sepa (ha pasado alrededor de un año desde que me metí con CUDA por lo que podría estar equivocado), las mempotecas son la única forma de recuperar información y son lentas. ¿Y qué versión de cuda en qué tarjeta? – 8bitwide
Tengo disponible un CUDA 4.0 y 4.2. – RSFalcon7
El código es demasiado grande para ponerlo aquí. Estoy de acuerdo en que cudaMemCpy es la única forma de obtener los resultados, pero podría evitar la copia basura. – RSFalcon7