Optimización de algoritmos para procesado de imágenes con GPUs

2015 
El objetivo de este proyecto es evaluar la mejora de rendimiento que aporta la paralelizacion de algoritmos de procesamiento de imagenes, para su ejecucion en una tarjeta grafica. Para ello, una vez seleccionados los algoritmos a estudio, fueron desarrollados en lenguaje C++ bajo el paradigma secuencial. A continuacion, tomando como base estas implementaciones, se paralelizaron siguiendo las directivas de la tecnologia CUDA (Compute Unified Device Architecture) desarrollada por NVIDIA. Posteriormente, se desarrollo un interfaz grafico de usuario en Visual C#, para una utilizacion mas sencilla de la herramienta. Por ultimo, se midio el rendimiento de cada uno de los algoritmos, en terminos de tiempo de ejecucion paralela y speedup, mediante el procesamiento de una serie de imagenes de distintos tamanos.---ABSTRACT---The aim of this Project is to evaluate the performance improvement provided by the parallelization of image processing algorithms, which will be executed on a graphics processing unit. In order to do this, once the algorithms to study were selected, each of them was developed in C++ under sequential paradigm. Then, based on these implementations, these algorithms were implemented using the compute unified device architecture (CUDA) programming model provided by NVIDIA. After that, a graphical user interface (GUI) was developed to increase application’s usability. Finally, performance of each algorithm was measured in terms of parallel execution time and speedup by processing a set of images of different sizes.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    4
    References
    1
    Citations
    NaN
    KQI
    []