subIntroduccion.tex 3.2 KB

12345678910111213141516171819202122232425
  1. \section{Introducci\'on}
  2. El presente Informe presenta los resultados de los experimentos que se realizaron para evaluar las diferencias entre m\'ultiples
  3. implementaciones en Assembler de los filtros de im\'agenes: Blur, Merge y HSL. As\'i como las conclusiones obtenidas y
  4. evidencias de qu\'e cambios podr\'ian mejorar el rendimiento en ciertos casos, o en todos.
  5. Las mediciones se realizan mediante un script de python que ejecuta de \textit{perf stat -B -e cache-references,cache-misses,cycles,instructions} para cada imagen del conjunto de prueba y para cada par\'ametro de entrada. Los resultados obtenidos de esta forma se miden en segundos que tardan en ejecutarse esa cantidad de iteraciones. El impacto de outliers se consideraba despreciable dado el alto sample size.
  6. Las mediciones las realizamos con una modificaci\'on en el archivo run.c que nos permite ejecutar 5000 (100 en el caso del filtro HSL) iteraciones de los algoritmos correspondientes, evitando leer/abrir/escribir la imagen en cada iteraci\'on, lo que nos permite medir casi exclusivamente el tiempo de ejecuci\'on del algoritmo.
  7. En cada caso particular se definir\'an, si hay, los cambios en las metodolog\'ias de pruebas y se evidenciar\'a con salida de c\'odigo o con diferentes gr\'aficos cuales fueron los resultados obtenidos.
  8. Se generaron una serie de im\'agenes para ser utilizadas como par\'ametros de entrada a partir de 9 im\'agenes de base. 5 de \'estas son monocrom\'aticas: una enteramente verde, una roja, una azul, una blanca y una de un color arbitrario. La raz\'on detr\'as de la elecci\'on de im\'agenes monocromas y de estos colores particulares se debe al uso de saltos condicionales en el filtro HSL que juzgan el color del pixel. Particularmente, si el m\'inimo coincide con el m\'aximo (es decir, que los 3 componentes RGB son iguales); por ende uno de los colores elegidos es blanco. La elecci\'on de los 3 colores primarios se debe a una comparaci\'on del m\'aximo con cada uno de ellos. Finalmente, se eligi\'o un color arbitrario para comparar con los resultados de estos colores espec\'ificos. Dos de las im\'agenes restantes son en blanco y negro con alto constraste; se busca dilucidar si cambios repentinos en los colores de la imagen tienen alg\'un efecto en la ejecuci\'on del algoritmo. Las dos im\'agenes restantes son arbitrarias y buscan representar casos generales que abarcan una diversidad de formas y colores.
  9. A su vez, para cada imagen de base se crearon copias de distintos tama\~nos: 16x16 [pixeles], 32x32, 64x64, 256x256 y 1024x1024. Adicionalmente, se crearon algunas im\'agenes de otras dimensiones para evaluar el efecto de ciertas caracter\'isticas en el ejecuci\'on de los algoritmos; por ejemplo, im\'agenes de 128x512 y 512x128 para determinar si la \'unica variable en el tiempo de ejecuci\'on es el tama\~no o si el ancho y el alto (manteniendo una cantidad constante de pixeles) tambi\'en lo afectan.
  10. \section{Especificaci\'on t\'ecnica}
  11. Todas las pruebas las corrimos en la misma computadora, con las siguientes especificaciones
  12. \begin{itemize}
  13. \item Procesador AMD FX-8350
  14. \item Sistema Operativo: Debian 8 (Linux 4.0)
  15. \item Governor: Performance
  16. \item Archivo de salida: /dev/null
  17. \end{itemize}