implementación de un cluster beowulf

Anuncio
Meteorología Colombiana
N3
pp. 35–37
Marzo, 2001
Bogotá D.C.
ISSN-0124-6984
IMPLEMENTACIÓN DE UN CLUSTER BEOWULF (*)
JORGE ENRIQUE VICTORINO GUZMÁN
Grupo de Investigación en Meteorología-U.N., Coinvestigador Proyecto “Proyecciones Climáticas Regionales e Impactos
Socioeconómicos del Cambio Climático en Colombia”. COLCIENCIAS-U.N. e IDEAM
RAÚL OCTAVIO HERNÁNDEZ MARTÍNEZ
Grupo de Investigación en Meteorología-U.N., Coinvestigador Proyecto “Proyecciones Climáticas Regionales e Impactos
Socioeconómicos del Cambio Climático en Colombia”. COLCIENCIAS-U.N. e IDEAM
Victorino, J., & R. Hernández. 2001: Implementación de un cluster Beowulf. Meteorol. Colomb. 3:35-37. ISSN 0124-6984.
Bogotá, D.C. – Colombia.
RESUMEN
Uno de los sistemas de simulación que exige gran cantidad de recursos computacionales y alto
desempeño son los modelos climáticos, lo cual implica un elevado costo a la hora de la
implementación, dificultando su adquisición. Una alternativa que ofrece buen desempeño a un
bajo costo económico es la construcción de un “Cluster Beowulf” que permite emular el
comportamiento de un computador con varios procesadores. En el presente artículo se muestran
los requerimientos de hardware para la construcción del Cluster Beowulf, los recursos software
para la implementación del modelo CCM3.6 y se muestran los resultados de rendimiento para el
Cluster Beowulf del Grupo de Investigación en Meteorología de la Universidad Nacional de
Colombia con diferente número de procesadores.
ABSTRACT
One of the simulation systems that put a great stress on computational resources and
performance are the climatic models, with a high cost of implementation, making difficult its
acquisition. An alternative that offers good performance at a reasonable cost is the construction of
“Cluster Beowulf” that allows to emulate the behavior of a computer with several processors. In
the present article we discuss the requirements of hardware for the construction of the Cluster
Beowulf, the software resources for the implementation of the model CCM3.6 and the
performance of the Cluster Beowulf, of the Group of Investigation in Meteorology at the National
University of Colombia, with different number of processors.
1
INTRODUCCIÓN
En la actualidad el Clúster Beowulf surge como una de
las herramientas de mayor auge en el campo de la
computación, conocida como una alternativa que busca
la mejor relación costo beneficio y que se ajusta a las
necesidades de un problema complejo que requiere de
un poder de computación alto.
(*)
El Clúster Beowulf es una tecnología que agrupa
computadores basados en el sistema Linux con el fin de
formar una máquina poderosa que emula el
comportamiento
de
un
supercomputador
de
multiprocesamiento. En 1994 Thomas Sterling y Don
Becker construyeron el primer Clúster en un proyecto de
investigación patrocinado por el Centro de la excelencia
en ciencias de los datos y de la información del espacio.
Ponencia presentada en el II Seminario “Cambio Climatico e Impactos Socioeconomicos”, realizado en Bogotá 11-13 de diciembre de
2000; dentro del marco del Grupo de Investigaciones en Meteorología - U.N. que cuenta con el apoyo financiero de COLCIENCIAS y el BID,
contrato COLCIENCIAS-U.N. No.391/99, como parte del Proyecto de Investigación apoyado por COLCIENCIAS y el BID “Proyecciones
climáticas e impactos socioeconómicos del cambio climático en Colombia", contrato COLCIENCIAS-U.N. No.321-98, y el IDEAM.
36
METEOROLOGÍA COLOMBIANA N3, MARZO 2001
2
CARACTERÍSTICAS
El hardware de un Clúster tiene una arquitectura basada
en multicomputadores, de los cuales uno se usa como el
nodo principal denominado “Maestro” y los demás
llamados “Esclavos”, conectados a través de una red.
Cada computador posee componentes de hardware que
son comunes en el mercado de los PC’s, por lo que no
hay problemas a la hora de conseguirlos. El Clúster se
comporta como una sola máquina por lo que el nodo
principal sirve como consola y los esclavos generalmente
no tienen teclado, mouse, ni monitor, siendo accedidos
vía remota o por terminal serial. El nodo maestro controla
el Clúster prestando el sistema de archivos a los nodos
esclavos.
El hardware en los nodos esclavos es simple, inclusive
pueden ser configurados sin disco duro, lo mínimo es el
procesador, la memoria, la tarjeta principal y algún
dispositivo de comunicación (tarjeta de red). Para el
almacenamiento se puede emplear un arreglo de discos
lo que facilita la administración, o que cada nodo cuente
con su propio disco duro lo que facilita la configuración.
Para la comunicación se deben adquirir componentes
que proporcionen la velocidad que la aplicación requiere,
por lo que se recomienda tarjetas de red de 100 Mbps o
superior y un componente activo que disminuya la
colisión en la comunicación.
Beowulf utiliza como sistema operativo alguna de las
distribuciones de Linux, adicionalmente se necesita
software para distribuir los procesos por medio de la red
a los demás computadores, para lo cual existen varias
librerías de funciones como PVM (Parallel Virtual
Machine) y MPI (Message Pasing Interface). Estas
librerías deben ser usadas por los compiladores de C o
Fortran para crear programas o bien para poder correr
uno que se ha adquirido.
El nodo maestro posee además unidad de CD Writer,
unidad de floppy disk, Pantalla, mouse y teclado.
3
Para medir y probar el rendimiento de los Clúster Beowulf
se usan programas desarrollados para tal fin
denominados “Benchmarks”. El objetivo es encontrar
valores que demuestran la superioridad de una
arquitectura o para estudiar el desempeño de
computadoras paralelas. Los “Benchmark” pueden ser
aplicaciones reales comerciales o específicas, programas
kernel o programas con propiedades estadísticas. El
problema es determinar que es está midiendo en
realidad.
Los “Benchmarks” utilizados para medir el rendimiento
del Clúster del Grupo de Investigación en Meteorología
fueron:
Cálculo de integrales en paralelo por el método de los
trapecios (usando un total de mil millones de trapecios).
El programa CCM3 versión 3.6 fue desarrollado por el
Instituto NCAR (National Center for Atmospheric
Research).
El objetivo de estas pruebas es medir el rendimiento del
Clúster agregando nodos para el proceso en paralelo. El
rendimiento del procesador Pentium II ya ha sido
probado, mas información en:
http://www.intel.com/procs/perf/limits.html.
Integral por el método de los trapecios
# Procesadores
Tiempo (segundos)
1
92
2
46
3
31
4
23
5
18
6
15
7
13
8
12
En el diseño de un Clúster para una determinada
aplicación se debe tener en cuenta lo siguiente: La
cantidad de procesamiento en Flops (operaciones de
punto flotante por segundo), La cantidad de
comunicación de los procesos, que es alta cuando los
resultados que obtiene uno de los nodos son usados en
gran cantidad por los demás.
Procesador
Memoria
Disco Duro
Comunicación
Ocho Intel Pentium II de 450 Mhz
2 GB de RAM
104 GB en Ocho discos (uno por
máquina)
Ocho Tarjetas de Red Fast Ethernet y
un Switch 8 puertos
Dispositivos de
almacenamiento No tiene
masivo
100
Tiempo (Seg)
En el Grupo de Investigación en Meteorologia de la
Universidad Nacional de Colombia se construyó un
Clúster Beowulf de ocho computadores que se usa para
correr el Modelo CCM3 (Community Climate Model),
(Pabón et al., 2001). El Clúster cuenta con los siguientes
componentes:
RESULTADOS
80
60
40
20
0
1
2
3
4
5
6
7
8
Procesadores
Debido a que los requerimientos de comunicación son
bajos al calcular la integral, ya que se divide el cálculo en
partes iguales para cada procesador, el aumento de
estos disminuye el tiempo, siendo aproximadamente igual
VICTORINO & HERNÁNDEZ: IMPLEMENTACIÓN MODELO CCM3 CLUSTER COMPUTADORES
37
al tiempo total que gasta un procesador sobre el número
de procesadores. Este es un funcionamiento óptimo para
una aplicación en paralelo.
componente. Adicionalmente gran parte del software
utilizado es de dominio publico y el código fuente esta
disponible.
Programa CCM3.6
Tiempo de
simulación
1 mes
1 mes
1 mes
1 mes
1 día
1 día
1 día
1 día
Se puede ajustar fácilmente a las necesidades del
usuario como a los requerimientos de la aplicación en
cuanto a procesamiento, memoria, almacenamiento,
comunicación y al no menos importante presupuesto.
Número de
Procesadores
2
4
6
8
2
4
6
8
Tiempo de
proceso
10:35’
5:53’
4:05’
3:15’
21´10’’
11’58’’
8’10’’
6’31’’
En el caso del programa CCM3 el funcionamiento no es
tan bueno, ya que se gasta un tiempo adicional en la
comunicación de los procesos. Al aumentar el número de
procesadores estos deben compartir más información,
por eso se invierte un tiempo en la comunicación de los
mismos, esto se debe al funcionamiento de la aplicación.
4
CONCLUSIONES
Las ventajas de usar un Clúster Beowulf son las
siguientes:
Al utilizar componentes de hardware comunes en el
mercado su precio es económico y se tiene la
oportunidad de elegir y la facilidad de remplazar cualquier
Es una tecnología flexible ya que agregar o quitar algún
componente para mejorar el desempeño se hace de
manera inmediata.
BIBLIOGRAFÍA
Anderson, E., & D. Patterson. 1997: Extensible,
scalable monitoring for clusters of computers.
Pabón, J., J. Eslava, G. Montoya, A. Calderón, F.
Higuera, J. Victorino & R. Hernández. 2001: Cluster de
PCs para computación de alta velocidad para
modelamiento del clima. Meteorol. Colomb. 3:33-34. ISSN
0124-6984. Bogotá, D.C. – Colombia.
Fox, A., S. Gribble, Y. Chawathe, E. Brewer & P.
Gauthier. 1997: Cluster-based scalable network services.
Radajewski, J., & D. Eadline. 1998: Beowulf
howto.1.1.1.
http://www.beowulf.org
http://www.extremelinux.org
http://www.ucar.edu
Descargar