next up previous contents
Next: 4.2.10 Discusión de resultados Up: 4.2 Implementación paralela Previous: 4.2.8 Tablas de resultados   Índice General


4.2.9 Gráficas

Figura: Multiplicación de matrices: $20\times 20$ a $50\times 50$

En la figura (3.1) se muestran los resultados para las matrices consideradas como ``pequeñas'', las de $20\times 20$ y $50\times 50$ elementos.

Se puede observar que, en ambas instancias, los mejores tiempos de cálculo se logran utilizando únicamente un nodo (versión uniprocesador). Más aún, en general, al incrementar el número de nodos el rendimiento empeora, lo cual se nota en el incremento del tiempo de cálculo.

Este comportamiento es esperado en problemas pequeños o de rápida resolución. En este caso, la implementación óptima es la uniprocesador. Debido a que la cantidad de operaciones y datos es pequeña, el tiempo de cálculo, aún en la versión uniprocesador, es de algunas centésimas de segundo. El introducir más nodos a la operación es perjudicial, ya que el tiempo de arranque de los mecanismos de paralelización, sincronización y transmisión de datos, niegan la ventaja de tener más elementos de procesamiento. Esto es notorio por el hecho de que, por el contrario, el tiempo se incrementa al agregar más nodos.

Las fluctuaciones más o menos violentas del desempeño para los problemas pequeños se deben, precisamente, a la poca duración del cálculo, de forma que se introducen las variaciones observadas debido a características del arranque del proceso en el sistema, el comportamiento aleatorio de las comunicaciones en red por el arranque de los procesos remotos, y otros factores.

Figura: Multiplicación de matrices: $100\times 100$ a $200\times 200$

En la figura (3.2) se muestran los resultados para las matrices consideradas como ``medianas'', las de $100\times 100$ y $200\times 200$ elementos.

La matriz de $100\times 100$ aún exhibe el comportamiento observado para las matrices pequeñas. El comportamiento general es de empeoramiento del rendimiento al agregar más nodos, si bien se aprecia que entre 3 y 7 nodos el rendimiento mejora, siendo el mejor tiempo de 5.9 segundos con 7 nodos. Esto sugiere que una matriz de este tamaño ya comienza a presentar un beneficio al utilizar múltiples elementos de procesamiento, sin embargo, nuevamente el beneficio se niega al ir más allá de 7 nodos. Esto implica que, para este tamaño de matriz, 7 nodos son los más adecuados para realizar el cálculo.

La matriz de $200\times 200$ presenta un comportamiento similar, donde el uso de 6 y 7 nodos brinda un tiempo de ejecución menor que al utilizar un solo procesador.

Figura: Multiplicación de matrices: $400\times 400$ a $650\times 650$

En la figura (3.3) se muestran los resultados para las matrices consideradas como ``grandes'', las de $400\times 400$ a $650\times 650$ elementos.

Las tres matrices presentan una gráfica de comportamiento similar. Se observa que el rendimiento empeora hasta alcanzar tres nodos, a partir de este momento se experimenta una tendencia a mejorar. En la matriz de $400\times 400$ el rendimiento se estabiliza a partir de 10 nodos, mientras que en las de $600 \times 600$ y $650\times 650$ el rendimiento sigue mejorando de modo que el mejor tiempo se obtiene utilizando el máximo de 17 nodos.


next up previous contents
Next: 4.2.10 Discusión de resultados Up: 4.2 Implementación paralela Previous: 4.2.8 Tablas de resultados   Índice General
2002-05-15