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> KK-<strong>Means</strong><br />

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

Figura 8.3 8.3. Ejemplos de dim<strong>en</strong>siones e id<strong>en</strong>tificadores.<br />

El tamaño <strong>del</strong> grid y de los bloques los determina el programador. Se usan las<br />

variables gridDim y blockDim <strong>para</strong> refer<strong>en</strong>ciar la dim<strong>en</strong>sión de grid y bloque,<br />

respectivam<strong>en</strong>te. De esta manera, un thread va a quedar id<strong>en</strong>tificado por un<br />

id<strong>en</strong>tificador d<strong>en</strong>tificador propio d<strong>en</strong>t d<strong>en</strong>tro ro <strong>del</strong> bloque al que pert<strong>en</strong>ece y por un id<strong>en</strong>tificador <strong>del</strong><br />

bloque al que pert<strong>en</strong>ece. Para ello, se utilizarán las variables threadIdx y blockIdx<br />

<strong>para</strong> refer<strong>en</strong>ciar el id<strong>en</strong>tificador <strong>del</strong> thread d<strong>en</strong>tro <strong>del</strong> bloque y al bloque d<strong>en</strong>tro <strong>del</strong><br />

grid, respectivam<strong>en</strong>te.<br />

También ién resulta necesario conocer los aspectos que intervi<strong>en</strong><strong>en</strong> <strong>en</strong> la ejecución<br />

sobre el hardware:<br />

• Device: : compuesta de SMs.<br />

o SM: Stream Multiprocessor.<br />

Shared memory.<br />

o SP: Scalar Processor.<br />

Registers, local mem.<br />

• Kernel (son funciones C con algunas restricciones)<br />

restricciones).<br />

o SP thread.<br />

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

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

Saved successfully!

Ooh no, something went wrong!