Вы находитесь на странице: 1из 6

Cluster de computadores con software libre para reducir los tiempos de cmputo de las simulaciones de problemas paralelizados

1. INTRODUCCION

El desarrollo creciente de los equipos de computacin permite realizar clculos de alta precisin y desarrollar simulaciones complejas. Sin embargo existen simulaciones cuyo desarrollo en las actuales computadoras podran tardarse semanas, meses y hasta aos debido a su complejidad, esto es una barrera tecnolgica muy difcil de resolver debido al elevado costo de los equipos y a los bajos recursos que posee la carrera de fsica destinados a equipos computacionales. Para mejorar la capacidad de clculo e incrementar la disponibilidad de recursos para un proceso se plantea implementar un cluster con los equipos que se dispone en el laboratorio de cmputo del Departamento de Fsica. As la alta capacidad computacional para realizar simulaciones y lograr paralelizar procesos entre los distintos ordenadores que componen el cluster podr coadyuvar en el estudio de problemas paralelizados.
1.1. ANTECEDENTES

El Departamento de Fsica se cre en el ao 1992, en ese ao los clculos solo se basaban en clculos matemticos con poco apoyo tecnolgico lo que limitaba el aprendizaje y aprovechamiento mximo de los estudiantes. A pesar de que actualmente se cuenta con equipos de cmputo estos no tienen la capacidad de realizar simulaciones sobre problemas paralelizados que requieren alta capacidad de clculo y recursos computacionales.

1.2. DEFINICION DEL PROBLEMA

El departamento de Fsica y la Carrera de Fsica desarrolla simulaciones y programas sobre funciones fsicas que requieren de muchos recursos computacionales un alto desempeo y contienen limitaciones para reducir de esa forma los tiempos de cmputo.
1.3. JUSTIFICACION El cluster permitir tratar problemas paralelizables de mayor escala, reduciendo los tiempos de computo a travs del computo paralelo (Amdahls law). El cluster podr aumentar su capacidad de computo (numero de ncleos) a medida que el centro de computo adquiera mas cpus. La implementacin de un cluster se realizar con la finalidad de reducir los tiempos de cmputo de las simulaciones de problemas paralelizados:

Mejoramiento de la capacidad de procesamiento y disponibilidad de recursos computacionales. Una computadora con la capacidad de clculo y los recursos generados con el cluster tendra un costo mucho ms elevado. Los estudiantes de la carrera de Fsica podrn desarrollar simulaciones ms

complejas y obtener resultados en menores tiempos. Adems podrn desarrollar mejor sus capacidades.

1.4. OBJETIVOS 1.4.1. OBJETIVO GENERAL

Implantar un cluster con software libre coadyuvando en la reduccin de los tiempos de cmputo de las simulaciones de problemas paralelizados.
1.4.2. OBJETIVO ESPECIFICO

o Analizar los diferentes tipos de cluster existentes sobre las distribuciones de software libre para seleccionar el adecuado. o Configurar la red fsica de computadores que formaran el cluster. o Integrar la red de computadores a un dominio de cluster.
o

Probar y validar los rendimientos de cmputo.

1.5. ALCANCES Y LIMITES El alcance del proyecto se presenta a continuacin: Se organizara una red con los equipos disponibles en los cuales se instalar el software apropiado para que estas funcionen como un cluster, para los usuarios del Departamento de Fsica que deseen correr sus programas paralelizados. No se programara ninguna simulacin de problema paralelizado, ni se colaborara en la elaboracin de estos.

2. INVESTIGACION DE CLUSTER 2.1. CLUSTER 2.1.1.1. DEFINICION

Se puede definir el cluster como un conjunto o agrupacin de equipos de computacin que se comportan como si fuera una nica computadora mas potente que los equipos que lo componen.

Los clusters son usualmente empleados para mejorar el rendimiento y/o la disponibilidad de los equipos que se tengan a disposicin a un menor costo de un computador individual de rapidez y disponibilidad semejante. 2.1.1.2. CLASIFICACION DE CLUSTERS

De acuerdo a sus caractersticas los clusters pueden clasificarse en: Clusters de alto rendimiento (HPCC High Performance Computing Clusters).- Son clusters para resolver problemas que requieran gran capacidad computacional y de memoria. Clusters de alta disponibilidad (HA o HACC High Availability Computing Clusters).- Son clusters que brindan confiabilidad y disponibilidad. Es decir que los servicios del cluster siempre estn disponibles para su uso y con datos confiables. Clusters de alta eficiencia (HT o HTCC High Throughput Computing Clusters).- Estos clusters buscan la realizacin de la mayor cantidad de tareas en el menor tiempo posible, por lo mismo poseen independencia de datos en tareas individuales. Tambien pueden clasificarse en Homogeneas cuando se usa el mismo hardware en todos los nodos y Heterogeneas cuando los nodos que componen el cluster tienen diferente hardware. 2.1.1.3. COMPONENTES DE UN CLUSTER

Para la implementacin deun clust er se requiere de componentes de Hardware y Software estos son: Nodos.- Cada uno de los computadores que componen el cluster, estos son controlados y vistos solo por el frontend. Almacenamiento.- Puede ser una NAS(dispositivo especifico dedicado a almacenamiento a travs de red) o almacenamiento interno en el servidor y/o los nodos, permitiendo as el resguardo de los datos e informacin. Sistema operativo.- Es un conjunto de programas que permiten la gestin eficaz de recursos, comienza a trabajar al encender el servidor y gestiona el hardware de los nodos, permite tambin interactuar con el usuario.

Conexiones de red.- Permiten la conexin de todos los nodos para el intercambio de datos y la distribucin de tareas. Middleware.- Es un software que acta entre el sistema operativo y las aplicaciones para proveer a un clster lo siguiente: - Una interfaz nica de acceso al sistema, la cual genera la sensacin al usuario de que utiliza un nico ordenador. - Herramientas para la optimizacin y mantenimiento del sistema: migracin de procesos, checkpoint-restart (congelar uno o varios procesos, mudarlos de servidor y continuar su funcionamiento en el nuevo host), balanceo de carga, tolerancia a fallos, etc. - Escalabilidad: debe poder detectar automticamente nuevos servidores conectados al clster para proceder a su utilizacin distribuyendo las tareas de forma equitativa.

Protocolos de comunicacin y servicio.- Reglas que permiten al usuario la comunicacin con el cluster y acceder a los servicios que este ofrezca.

Ambiente de programacin paralela.- permiten implementar algoritmos que hagan uso de recursos compartidos: CPU (central processing unit: unidad central de proceso), memoria, datos y servicios.

2.2. CLUSERS DISPONIBLES Actualmente existen varias aplicaciones de cluster que pueden ser implementadas de acuerdo a la necesidad del usuario, en nuestro caso los clusters a implementar son de alto rendimiento, las alternativas que se han podido encontrar para este fin son las siguientes: 2.2.1. ROCKS Es una distribucin que se instala sobre Centos para clusters de computadores de alto rendimiento, es una de las distribuciones ms empleadas en el mbito de clusters, por su facilidad de instalacin e incorporacin de nuevos nodos. Otra de sus grandes facilidades es que incorpora gran cantidad de software para el mantenimiento y monitorizacin del cluster, lo que a su vez podra suponer en algunos casos una limitacin. Al momento de iniciar este proyecto la versin ms actual de rocks es 6.0.[1]

2.2.2. UBUNTU Es un Sistema Operativo el cual nos permite la configuracin de los diferentes tipos de clusters, es uno de los sistemas operativos libres mas aplicados. Tiene una variedad de aplicaciones, y para la implementacin del cluster solo es necesario configurar las maquinas. 2.2.3. BEOWULF Es un sistema de cmputo paralelo basado en clusters de ordenadores personales conectados a travs de redes informticas standard, sin el uso de equipos desarrollados especficamente para la computacin paralela. 2.2.4. WAREWULF

2.3. ANALISIS Y ELECCION DE LOS SISTEMAS OPERATIVOS Tomando en cuenta que en los laboratorios de fsica se tiene instalado Ubuntu y los estudiantes usan habitualmente las computadoras se ha desicido escoger como alternativa montar un cluster en Ubuntu y el otro en Rocks debido a que rocks es una de las aplicaciones para clusters mas extendidas adems de que cuenta con una variedad de programas.

2.4. HARDWARE DISPONIBLE 2.5. INSTALACION DE CLUSTER CON ROCKS EN CENTOS 2.6. INSTALACION DEL CLUSTER EN UBUNTU 2.7. MPI 3. PRUEBAS DE RENDIMIENTO 3.1. PRUEBAS EN CENTOS 3.2. PRUEBAS EN UBUNTU 4. ANALISIS Y COMPARACION DEL RENDIMIENTO DE LOS CLUSTERS 4.1. CONCLUSIONES Y RECOMENDACIONES

BIBLIOGRAFIA [1] Pagina Web de Rocks, http://www.rocksclusters.org/