Propuesta para Trabajo de Grado


Conclusiones del desarrollo



Yüklə 177,97 Kb.
səhifə7/8
tarix02.11.2017
ölçüsü177,97 Kb.
#27858
1   2   3   4   5   6   7   8

Conclusiones del desarrollo


Se infirieron varias conclusiones de las pruebas ejecutadas, y otras de todo el proceso de desarrollo del prototipo, todas se listan a continuación.
    1. Rendimiento


Desde el planteamiento de la oportunidad de CUDAlicious [Sección Descripción General, 1] se planteó la hipótesis de que la GPU brinda un mayor rendimiento en comparación a la CPU en cuanto a tareas paralelizables.

Los resultados de las pruebas (gráfica 1) corroboran esta hipótesis, siendo la implementación en GPU hasta 8.9 veces más rápida en filtrar la misma imagen a comparación de la CPU en la versión no separable del filtrado. Igualmente, se evidenció que la GPU fue hasta 4.5 veces más rápida que la CPU en la versión separable.


    1. Tamaño del problema


No se pudo realizar pruebas con imágenes más grandes debido a varios factores:

  1. La forma de almacenamiento en GPU de las imágenes:

En este momento cada valor de cada pixel de la imagen se está almacenando como un float, gastando 4bytes por cada valor. Si se hubiera implementado usando unsigned char, las imágenes filtrables podrían ser de mayor tamaño.


  1. La cantidad de memoria disponible en GPU

La memoria disponible en GPU es sensiblemente inferior a la disponible por el sistema (CPU), esto hace que las imágenes filtrables no puedan ser muy grandes.

Con respecto a la primera limitante, el prototipo se implementó usando este tipo de datos debido a que no se tenía información con respecto a los formatos de las imágenes n-dimensionales en un principio, y se optó por elegir un tipo de dato que no supusiera limitantes de precisión y/o tamaño de los valores de las imágenes.

Es por esto que en trabajos futuros [Sección Conclusiones, Recomendaciones y Trabajos Futuros], y en la primera propuesta del trabajo de grado, se propone dividir las imágenes de entrada y procesarlas a medida que se va ocupando totalmente la memoria disponible de gráficos.

    1. Dimensionalidad del problema


El prototipo actual es capaz de filtrar imágenes 2D, 3D y hasta 4D. Se descubrió durante el desarrollo del mismo que es difícil filtrar imágenes de mayor dimensionalidad.

Esto es debido a la forma en la que se ejecutan los kernels en CUDA; como ya se explicó en [Sección Marco Teórico, 1.2.1.1] la forma de ejecutar los kernels es definiendo la dimensión de bloques y de hilos del problema. Esto no solo sirve para determinar que tan ocupada se encuentra la GPU en el momento de el procesamiento, sino que también por medio del uso de los índices internos de cada hilo/bloque se especifica que parte del problema procesará cada núcleo.

CUDA actualmente provee una forma sencilla de implementar procesamiento sobre matrices de 2 y 3 dimensiones, debido a estos índices, pero para problemas de mayores dimensiones, la implementación de cualquier algoritmo aplicado sobre estos datos es mucho más complicado, ya que no existe una forma estándar de unir unidades de procesamiento con partes del problema.

    1. Manejo de datos


Inicialmente se pensó en que el tiempo necesario para copiar los datos de memoria principal (RAM) a memoria de GPU iba a ser una gran desventaja de utilizar CUDA.

En las pruebas se evidenció que este paso de datos, al menos en el tamaño de los datos que actualmente se probaron, no es un elemento crítico a la hora de definir el problema. Esto puede ser debido al gran ancho de banda que goza la interface PCI-Express, que es la interface utilizada actualmente en la mayoría de tarjetas gráficas actuales.


V – CONCLUSIONES, RECOMENDACIONES Y TRABAJOS FUTUROS

  1. Conclusiones

    1. Se respondió la pregunta de investigación


Fue posible implementar un prototipo que usa las características del hardware de visualización de última generación, mejorando el rendimiento de las implementaciones existentes.
    1. Existe un aporte a la solución de la problemática


Haciendo uso de la plataforma CUDA, y de las técnicas de programación descritas en el proceso de desarrollo, es posible mejorar considerablemente el rendimiento de los algoritmos de filtrado de imágenes médicas. Hay que tener en cuenta las conclusiones descritas al momento de desarrollar una nueva aplicación, pero haciendo un uso correcto de estas herramientas es posible ayudar a la problemática.
    1. Se cumplieron los objetivos


Todos los objetivos (general y específicos) se cumplieron, como se describe en la tabla 2.
  1. Recomendaciones

    1. Para la carrera


Se recomienda la investigación de nuevas herramientas para mejorar procesos actuales en el campo de la visualización científica, ya que aunque muchos de los problemas en el área tienen investigaciones e implementaciones efectivas, es posible mejorarlos con el uso de nuevas tecnologías.

Esto aplica no solo al área de investigación en el que se enmarca este trabajo de grado, en casi todas las áreas en la que la ingeniería de sistemas tiene posibilidad de actuar, se pueden mejorar procesos, formas de implementación y en general la manera de atacar el problema. Los ingenieros de sistemas tienen una posibilidad, por no decir la obligación, de mejorar el mundo en el que viven, y el uso de nuevas tecnologías y herramientas tecnológicas es una forma de hacerlo.


    1. Para la universidad


Incentivar la investigación es clave para el desarrollo del conocimiento, la recomendación es brindar un ambiente propicio para esta; la universidad cuenta con los recursos monetarios para promover la investigación en todas las carreras, y en muchos casos se cuenta también con los recursos tecnológicos que la propician, pero también es necesario generar la conciencia de la investigación y la multidisciplinareidad en los estudiantes.

  1. Yüklə 177,97 Kb.

    Dostları ilə paylaş:
1   2   3   4   5   6   7   8




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin