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 />

8.3. Compilación programas CUDA. ............................................................................... 85<br />

8.4. Librerías CUDA. ........................................................................................................... 86<br />

8.5. Arquitectura y mo<strong>del</strong>o de programación ................................................................ 87<br />

8.6. Técnicas de Optimización........................................................................................... 94<br />

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

9. BIBLIOGRAFÍA ...................................................................................................... 100<br />

10. PUBLICACIONES ................................................................................................. 104<br />

Índice de Figuras<br />

Figura 2.1. El espectro electromagnético. .................................................................. 19<br />

Figura 2.2. Ejemplo ilustrativo de una imag<strong>en</strong> multi-dim<strong>en</strong>sional de 4 bandas. ....... 20<br />

Figura 2.3. Configuración típica de un cluster Beowulf. ........................................... 23<br />

Figura 2.4. Distintos mo<strong>del</strong>os de <strong>GPU</strong>s NVidia. ....................................................... 24<br />

Figura 2.5. Ejemplo de la Virtex-6 FPGA. ................................................................ 24<br />

Figura 3.1. Operaciones <strong>en</strong> coma flotante por segundo <strong>para</strong> CPU y <strong>GPU</strong>. ............... 25<br />

Figura 3.2. Ancho de banda CPU y <strong>GPU</strong>. ................................................................. 26<br />

Figura 3.3. Pipeline clásico de procesami<strong>en</strong>to <strong>en</strong> una <strong>GPU</strong>. ..................................... 28<br />

Figura 3.4. La <strong>GPU</strong> proporciona más transistores <strong>para</strong> el procesami<strong>en</strong>to de datos. .. 29<br />

Figura 3.5. Pipeline clásico fr<strong>en</strong>te a pipeline unificado. ............................................ 32<br />

Figura 3.6. Pila de software de CUDA. ..................................................................... 33<br />

Figura 3.7. Operaciones de memoria Gather (reunión) y Scatter (dispersión). ......... 33<br />

Figura 3.8. Shared memory. ....................................................................................... 34<br />

Figura 3.9. Grid, bloques e hilos. ............................................................................... 36<br />

Figura 3.10. Acceso a difer<strong>en</strong>tes espacios de memoria. ............................................ 37<br />

Figura 3.11. Arquitectura de la <strong>GPU</strong> Tesla c1060 de NVidia. .................................. 38<br />

Figura 3.12. Conjunto de multiprocesadores SIMD con memoria compartida<br />

on-chip........................................................................................................................ 39<br />

Figura 4.1. Ejemplo gráfico <strong>del</strong> <strong>algoritmo</strong> K-<strong>Means</strong>. ................................................ 47<br />

Figura 5.1. Ejemplo de reducción <strong>en</strong> tres pasos de una suma dado un cluster de<br />

8 elem<strong>en</strong>tos................................................................................................................. 50<br />

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

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

Saved successfully!

Ooh no, something went wrong!