¿Por qué no estoy superponiendo las transferencias de datos y el cálculo con GTX 480 y CUDA 5?

He intentado superponer las ejecuciones del kernel con memcpyasync pero no funciona. Sigo todas las recomendaciones de la guía de programación, uso de memoria anclada, diferentes flujos, etc. Veo que la ejecución del kernel se superpone pero no con las transferencias de memoria. Sé que mi tarjeta solo tiene un motor de copia y un motor de ejecución, pero la ejecución y los traslados deben superponerse, ¿no?

Parece que el "motor de copia" y el "motor de ejecución" siempre hacen cumplir el orden al que llamo funciones. El trabajo consiste en 4 secuencias ejecutando [HtoD x2, Kernel, DtoH]. Si emito HtoDx2, Kernel, DtoH serie en cada flujo, veo en el generador de perfiles como la primera operación de stream2 HtoD no se iniciará hasta que finalice la primera operación DtoH. Si emito primero el HtoD en cada transmisión, luego el segundo HtoD, luego el kernel y luego el DtoH (amplitud) no veo ninguna superposición y la GPU también impone el orden de los problemas.

He intentado con el ejemplo simpleStreams que figura en CUDA SDK y también veo el mismo comportamiento.

Adjunto algunas capturas de pantalla que muestran el problema tanto en el analizador visual como en Nsight para VS2008.

PD. No tengo configurada la env CUDA_LAUNCH_BLOCKING

Simple Streams Visual Profiler

Línea de tiempo de MyApp Nsight amplitud primero

La profundidad de la línea de tiempo de MyApp Nsight primero

editar:

colocar núcleos x4 adicionales (total 2HtoD, 5 kernel, 1DtoH por flujo) -> Si ejecuto nvprof con y sin --concurrent-kernels-off, el tiempo transcurrido es el mismo. Si configuro la env CUDA_LAUNCH_BLOCKING = 1, entonces veo una mejora en el rendimiento (desde la línea de comandos) de 7.5%.

Especificación del sistema:

Windows 7NVIDIA 6800 VGA en la primera ranura PCI-EGTX480 en la segunda ranura PCI-EControlador NVIDIA: 306.94Estudio visual 2008CUDA v5.0Visual Profiler 5.0Nsight 3.0

Respuestas a la pregunta(3)

Su respuesta a la pregunta