• No results found

PAY AND PERFORMANCE MANAGEMENT Introduction

Los tiempos medidos utilizando la mejor configuraci´on para el algoritmo gen´etico en el sistema Tesla M2070 se muestran en la tabla 18. Esta configuraci´on hace referencia a una poblaci´on con 500 individuos, un 1 % de mutaci´on y una condici´on de convergencia estricta para encontrar el frente de Pareto. Se ha utilizado como prueba la secuencia “Diverging Tree” ya que los resultados obtenidos son similares a los observados para la secuencia “Translating Tree”. Hay que se˜nalar que esta elecci´on s´olo afecta al n´umero de generaciones para alcanzar una soluci´on ´optima. Como se esperaba, la evaluaci´on fitness es la etapa m´as costosa del algoritmo gen´etico, no siendo muy relevante la sobrecarga en el intercambio de informaci´on entre el host y el device. De esta forma, se obtienen unos speedups de ×1.79 para dos GPUs.

Tesla M2070 tCP U(s) tGP U(s) tComm(s)

1 GPU 1.24 22495.6 869.5 2 GPUs 124.2 12464.9 447.4

Tabla 18: Tiempos de ejecuci´on con Multi-GPU en el sistema Tesla M2070.

Se han obtenido resultados similares con un n´umero mayor de dispositivos gr´aficos. La ta- bla 19 muestra a´un m´as aceleraciones cuando se habilitan dos GPUs. Adem´as se puede observar c´omo los ratios de escalabilidad se mantienen de manera satisfactoria con 4 GPUs alcanzando ×3.71 de speedup. Los resultados computacionales muestran que esta imple- mentaci´on multi-GPU es eficiente en t´erminos de escalabilidad (95 % usando 2 GPUs y 93 % usando 4) y la tendencia indica que los tiempos de convergencia del algoritmo gen´etico ser´ıan menores teniendo m´as recursos disponibles. Podemos concluir que la escalabilidad obtenida para los algoritmos gen´eticos es ´util a la hora de resolver problemas de esta naturaleza. Los buenos resultados de rendimiento se deben tanto a una carga de trabajo equilibrada como al bajo coste involucrado en el intercambio de datos.

Tesla C1060 tCP U(s) tGP U(s) tComm(s)

1 GPU 1.18 23748.0 2025.8 2 GPUs 278.52 12613.1 1022.5 4 GPU 153.28 6248.4 513.5

Tabla 19: Tiempos de ejecuci´on con Multi-GPU en el sistema Tesla C1060.

Por otra parte, el uso de m´ultiples niveles de paralelismo permiten multiplicar las acelera- ciones. En primer lugar, los speedups alcanzados en el sistema multi-GPU pueden ser de hasta ×3.71 con 4 GPUs habilitadas. En segundo lugar, las aceleraciones de hasta ×32 se pueden obtener explotando el paralelismo de datos en una GPU. Por una lado, la combi- naci´on de ambas aceleraciones permite reducir el tiempo de exploraci´on para alcanzar una soluci´on ´optima en un 99.2 % comparado con un procesador de prop´osito general. Por el otro, el uso de un sistema multi-GPU no s´olo permite obtener mayores tasas de FLOPS que en una CPU, sino que en t´erminos de consumo de energ´ıa (MFLOPS/vatio) tambi´en es mejor.

Aunque el tiempo de b´usqueda en los algoritmos gen´eticos es importante, su uso favorece la obtenci´on de soluciones casi ´optimas que cumplen los requisitos de tiempo de respuesta o consumo de recursos, y conforme evoluciona el algoritmo gen´erico, la b´usqueda se va refinando gradualmente. Esta caracter´ıstica, junto con la posibilidad de reducir el tama˜no de la poblaci´on, supone una disminuci´on impresionante en el n´umero de simulaciones que abre la posibilidad de construir un sistema inteligente que se autocorrija/adapte dependiendo de requerimientos espec´ıficos y/o cambios sustanciales en el entorno.

6.5.4. Resultados visuales.

Para terminar, se presentan los resultados visuales obtenidos con las dos secuencias de prueba. La figura 62 muestra las principales diferencias en los resultados obtenidos para la secuencia

“Diverging Tree”. La salida original del algoritmo McGM se muestra en la parte de arriba de la figura, en el centro y abajo se muestran los resultados obtenidos a partir de las configuraciones dadas por el algoritmo gen´etico para unas reducciones de memoria entre el 75 % y el 50 %. Tambi´en se muestra el tiempo llevado a cabo para realizar la estimaci´on de movimiento (MEtime). La fase (la direcci´on de los pixels) se representa con el c´odigo de color que se

muestra en los bordes del fotograma y el m´odulo o velocidad se representa con una escala de grises.

Figura 62: Resultados visuales para el algoritmo McGM original y los resultados obtenidos con el algoritmo gen´etico con una reducci´on en la utilizaci´on de memoria GPU del 75 % (centro) y del 50 % (abajo) para el est´ımulo Diverging Tree.

De forma similar, la figura 63 muestra las soluciones obtenidas para la secuencia “Translating Tree”.

Con el est´ımulo de entrada “Diverging Tree” se ha obtenido una reducci´on en el uso de memoria del 75 % con la misma precisi´on usando la m´etrica de Barron y un 50 % en el tiem- po de ejecuci´on compar´andolo con el algoritmo original. Sin embargo, la configuraci´on que

Figura 63: M´odulo y fase para el est´ımulo Translating Tree obtenidos con el algoritmo McGM original y el

obtenido haciendo uso del algoritmo gen´etico con una reducci´on en el consumo de memoria de la

consigue reducir la memoria en un 50 % degrada la precisi´on un 22 % con un ×3.3 de speedup.

Para la secuencia “Translating Tree”, se ha encontrado una soluci´on que requiere la mitad del uso de memoria, siendo m´as precisa (con un error de Barron de 0.13 radianes menos que el original) y ×3.5 veces m´as r´apida.

Related documents