29.04.2013 Views

Implementación en GPU del algoritmo K-Means para ... - UMBC

Implementación en GPU del algoritmo K-Means para ... - UMBC

Implementación en GPU del algoritmo K-Means para ... - UMBC

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Implem<strong>en</strong>tación</strong> <strong>en</strong> <strong>GPU</strong> <strong>del</strong> <strong>algoritmo</strong> K-<strong>Means</strong> <strong>para</strong> procesami<strong>en</strong>to <strong>para</strong>lelo<br />

de imág<strong>en</strong>es de satélite disponibles <strong>en</strong> la herrami<strong>en</strong>ta Google Maps<br />

Bloque:<br />

Grid:<br />

o El tamaño <strong>del</strong> bloque estará <strong>en</strong>tre 192 y 256 threads.<br />

o Aum<strong>en</strong>tar ocupancia sólo significa aum<strong>en</strong>tar el r<strong>en</strong>dimi<strong>en</strong>to si el<br />

kernel está “bandwidth bound”.<br />

o Empezar con #bloques / #SMs > 2 (hasta 8 bloques simultáneam<strong>en</strong>te<br />

<strong>en</strong> cada SM).<br />

o Idealm<strong>en</strong>te: <strong>algoritmo</strong> # bloques >> (escalable a futuras <strong>GPU</strong>s).<br />

o En Fermi distintos SMs podrán ejecutar distintos kernel, de esta<br />

manera se obt<strong>en</strong>drá un <strong>para</strong>lelismo a nivel de tarea.<br />

8.7. Herrami<strong>en</strong>tas desarrollo y depuración.<br />

• Modo emudebug:<br />

o Opción –deviceemu <strong>en</strong> nvcc.<br />

o Código de kernels se ejecuta <strong>en</strong> CPU.<br />

o Posibilidad de depurar con la incorporación de printf();<br />

• CUDA Profiler:<br />

• NEXUS:<br />

o Utiliza HW counters: según compute capability.<br />

o Coalesc<strong>en</strong>cia, memory/instruction throughput, diverg<strong>en</strong>cia threads …<br />

o Entorno integrado sobre Visual Studio: CUDA, Op<strong>en</strong>CL, …<br />

o Profiling + depuración sobre <strong>GPU</strong>.<br />

o Más información <strong>en</strong>: http://developer.nvidia.com/object/nexus.html.<br />

Trabajo Fin de Máster -99- Sergio Bernabé García

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!