Optimización MULTI-GPU de un algoritmo de detección de colisiones. Caso de estudio OPENCL
Abstract
En la actualidad la representación gráfica es un elemento ampliamente utilizado y en constante crecimiento, intentando llegar a conseguir tal semejanza con la realidad que el ojo humano no sea capaz de detectar. Para conseguir dotar de realismo a estas representaciones gráficas, hay que tener en cuenta gran cantidad de parámetros, uno de ellos son las leyes físicas, más específicamente la de las colisiones o choques, que impide a dos o más objetos ocupar la misma posición espacial en el mismo instante de tiempo. En este problema es en el que se centra este proyecto, en la búsqueda de un método de detección de colisiones que pueda llegar a conseguir un cálculo de ellas en tiempo real o que se aproxime lo máximo posible a éste. Para llevar a cabo esta tarea, se propone una jerarquía de volúmenes envolventes, unido al uso de la técnica de conos de normales descrita por Volino[23], que ayudará en gran medida a la reducción del número de tests a realizar, conllevando a una mejora en el tiempo. Además, se propone el cálculo final de las colisiones dentro de la GPU (graphics processing unit), aprovechando de este modo el gran paralelismo de este tipo de procesador, pudiendo realizar gran cantidad de operaciones en un mismo instante de tiempo. Para este paso se hará uso de openCL (open computing language), lenguaje estándar y libre. Mediante las técnicas descritas, los resultados han sido los esperados, se ha conseguido una buena mejora en el tiempo del cálculo de las colisiones en la animación empleada como prueba.
Description
Proyecto Fin de Carrera leído en la Universidad Rey Juan Carlos en el curso académico 2011/2012. Tutores del Proyecto: Alberto Sánchez Campos y Marcos Novalbos Mendiguchía
Collections
- Proyectos Fin de Carrera [439]