Paralelización del renderizado de animaciones en Pov-Ray
Resumen
El proyecto detallado en esta memoria proporciona la capacidad de paralelizar el renderizado de animaciones tanto en sistemas distribuidos como en sistemas de memoria compartida. Con el fin de dar soporte a dicha capacidad, se ha desarrollado una aplicación informática combinando el lenguaje C y directivas MPI (del inglés Message Passing Interface) con shell de GNU/Linux, obteniendo de este modo, el comportamiento requerido para llevar a cabo la renderización en paralelo. El sistema implementado sigue la estructura tradicional cliente-servidor, en la que se diferencian claramente los roles correspondientes al proceso servidor y los pertinentes de un proceso cliente. El proceso servidor actúa como un crupier repartiendo los paquetes de trabajo por hacer a los nodos clientes ociosos. Por su parte, los procesos clientes se encargarán de renderizar el paquete que se les ha asignado y devolverle después el trabajo realizado al proceso servidor. La aplicación se ha llevado a cabo principalmente en lenguaje C utilizando la librería de MPI que se proporciona para dicho lenguaje, empleando para su desarrollo, programación estructurada. También cabe destacar que una buena parte del sistema ha sido realizado utilizando shell de GNU, puesto que este proyecto se ha llevado a cabo en su totalidad en sistemas GNU/Linux, que son uno de los ejemplos más prominentes de software libre. Para concluir, merece la pena mencionar la utilidad del sistema implementado, el cual es capaz de distribuir el trabajo necesario para renderizar una animación entre el número de nodos disponibles que se desee, disminuyendo de este modo, con respecto al renderizado secuencial en un solo nodo, el tiempo de respuesta para obtener dicha animación renderizada, aprovechando la capacidad de cómputo de cada nodo lo máximo posible.
Descripción
Proyecto Fin de Carrera leído en la Universidad Rey Juan Carlos en el curso académico 2009/2010. Tutores del Proyecto: Óscar David Robles Sanchez y Pablo Toharia Rabasco
Colecciones
- Proyectos Fin de Carrera [439]