Este trabajo analiza las características más avanzadas de la arquitectura Kepler de Nvidia,
principalmente el paralelismo dinámico para el lanzamiento de kernels desde la GPU
y la planificación de hilos con Hyper-Q. Posteriormente, ilustra diversas formas
de aprovecharlas en un código que computa los momentos de Zernike, y que admite
formulaciones directa y recursiva. Hemos podido así contrastar las posibilidades
que ambas ofrecen para maximizar rendimiento en las nuevas GPUs, la primera desplegando
todo el paralelismo, y la segunda aumentando la intensidad aritmética gracias a la
amortización de resultados procedentes de iteraciones previas. Esto nos ha permitido
aumentar los factores de aceleración que ya logramos anteriormente con arquitecturas
Fermi frente a la versión C ejecutada en una CPU multicore de su misma generación.
Logramos también identificar la carga de trabajo crítica que necesita un código
para mejorar su ejecución en las nuevas plataformas dotadas de seis veces más núcleos
computacionales, y cuantificar la sobrecarga introducida por los nuevos mecanismos
de programación dinámica en CUDA.