Abstract:
En este proyecto, se aborda el concepto de procesamiento distribuido, que se refiere
a una estrategia de computación en la que una tarea o proceso computacional se divide
en procesos más pequeños y que se ejecutan en múltiples nodos de manera simultánea e
interconectada. Teniendo en cuenta lo anterior esta investigación tiene como objetivo el
desarrollo de una plataforma para evaluar el rendimiento del procesamiento distribuido en
un cluster de Raspberry Pi 3B utilizando los protocolos I2C, UART y Ethernet, además, de
comparar el rendimiento de una única Raspberry Pi, con y sin multiprocesamiento.
Para logar la comunicación entre nodos empleando el protocolo I2C y UART, se diseñaron
programas en lenguaje Python, que emplean un algoritmo el cual chequea la integridad de los
datos transmitidos. En el caso del protocolo Ethernet, se utilizó Slurm como el coordinador
de tareas y se implementó una automatización para la configuración de nodos esclavos. Para
lograr esta, se desarrolló un código en lenguaje Python que permitió establecer todas las
configuraciones necesarias en cada nodo esclavo.
En cuanto a la comparación de rendimiento, se realizó una evaluación centrada en el tiempo de ejecución, analizando matrices cuadradas de dimensiones que varían desde 2×2 hasta
7 × 7 con múltiples pruebas para garantizar resultados robustos. Los resultados mostraron
que el multiprocesamiento no mejora el rendimiento cuando se trabajan con las dimensiones
antes mencionadas. También se realizaron pruebas tanto en el cluster de Raspberry Pi (protocolo Ethernet) y la Raspberry Pi individual (con y sin multiprocesamiento) con matrices
cuadradas cuyas dimensiones son 100×100, 500×500 y 1000×1000. Los resultados obtenidos
evidenciaron que la implementación de un cluster de Raspberry Pi mejora el rendimiento
en comparación con una Raspberry Pi individual, con y sin multiprocesamiento, conforme
se incrementan las dimensiones de la matriz.
En conjunto, este proyecto representa un enfoque sólido en la investigación de procesamiento distribuido en dispositivos Raspberry Pi, con énfasis en la eficiencia, la automatización y la optimización del rendimiento de la red. Los resultados obtenidos respaldan la
viabilidad y utilidad de esta estrategia en entornos de cluster de Raspberry Pi, abriendo
nuevas posibilidades en el campo de la computación distribuida. (LA)