PDF de programación - Diseño y evaluación de un clúster HPC: Software de sistema

Imágen de pdf Diseño y evaluación de un clúster HPC: Software de sistema

Diseño y evaluación de un clúster HPC: Software de sistemagráfica de visualizaciones

Publicado el 26 de Marzo del 2018
397 visualizaciones desde el 26 de Marzo del 2018
6,5 MB
73 paginas
Creado hace 5a (17/06/2014)
Diseño y evaluación de un clúster HPC: Software de sistema

Autor:

Cristobal Ortega Carrasco

Grado en Ingeniería Informática

Especialidad en Ingeniería de Computadores

26 de Junio de 2014

David López Álvarez, Arquitectura de computadores

Director:

Facultad de Informática de Barcelona

Universidad Politécnica de Cataluña (UPC) - BarcelonaTech

1

Resumen

Este trabajo trata de qué software a nivel de sistema es necesario para poder crear un clúster
para fines de High Perfomance Computing (HPC). Para ello se realiza un state of the art del
software existente y más conocido. También se trata el cómo instalarlo y configurarlo de la
manera más óptima para tener un mejor resultado, no se llega a optimizar a nivel de kernel.
Para esta parte del trabajo, se dispone de un pequeño clúster de procesadores de bajo consumo
ARM para experimentar con el distinto software, esto supone encontrarse con problemas que
quizá con otra plataforma más típica no ocurrirían.

El trabajo tiene como objetivo final el dejar un clúster funcional a nivel de software de sis-
tema, para poder correr aplicaciones de HPC sobre él y poder obtener métricas de rendimiento.

Resum

Aquest treball és sobre quin tipus de software a un nivell de sistema és necessari per poder
crear un clúster amb una finalitat per HPC. Per aix`o, es realitza un state of the art del software
existent. També és sobre com instal·lar i configurar aquest software per que corri de manera
més `optima per arribar a tenir un millor resultat, a nivell de kernel no es fan optimitzacions.
Per aquest part del treball, es disposa d’un clúster de processadors de baix consum ARM per
experimentar amb el diferent software, aix`o podria implicar trobar-se mes problemes dels que
hi podríem trobar si utilitzéssim una plataforma més típica.

El treball té com a objectiu final deixar un clúster funcional preparat a nivell de software

de sistema, per córrer diverses aplicacions HPC i poder obtenir el seu rendiment.

Abstract

This project is about what kind of system software is needed to be able to make a HPC
cluster. In order to achieve this, a state of art is made about system software used nowadays.
It is also about how install,configure and optimize this software to get the best results, but
no optimizations are made at the kernel level. For this part of the work, there is a cluster of
low-power ARM processors to experiment with different software, this could mean finding some
problems that it might not occur if another platform more typical would have been used.

The goal of this project is to get a functional cluster prepared with system software capable

of running HPC applications and get its performance.

3

Índice general

Resumen

Prefacio

2

8

1. Introducción

10
1.1. Orígenes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2. Problemática . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3. Student Cluster Challenge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4. Objetivos
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.1. Objetivos Generales
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.2. Objetivos individuales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2. Planificación y presupuestos

2.2. Estimación temporal

14
2.1. Planificación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.1. Estudio Teórico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.2. Aplicación Práctica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.1. Listado de Tareas
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.2. Diagrama de Gantt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2.3. Recursos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3. Presupuesto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.1. Recursos humanos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3.2. Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3.3. Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3.4. Gastos generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3.5. Presupuesto total . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3. State of art

22
3.1. Stack de software en High Perfomance Computing . . . . . . . . . . . . . . . . . 22
3.1.1. HP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
IBM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.1.2.
3.1.3. Cray Inc.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.1.4. SGI
3.2. Sistemas operativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.3. Monitorización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3.1. Monitorización de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3.2. Monitorización de sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.4. Software de desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4

3.4.1. Compiladores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.4.2. Profiling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.5. Software de scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.6. Message Passing Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Implementaciones MPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.7. Librerías . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.7.1. ATLAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.7.2. FFTW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

3.6.1.

4. Diseño de un clúster

36
4.1. Clúster a usar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.2. Selección de software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.3. Sistema operativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.4. Monitorización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.4.1. Ganglia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.5. Software de desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.5.1. GCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.5.2. Extrae . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.6. Message Passing Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.6.1. OpenMPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.6.2. MPICH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.6.3. Evaluación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.7. Librerías . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.7.1. ATLAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.7.2. FFTW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.8. Problemas con los nodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

5. Conclusiones

5.1. Conclusiones

58
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.1.1. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.1.2. Conclusión personal
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.2. Trabajo futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

6. Conclusiones de equipo

60
6.1. Conclusiones de cara a la competición . . . . . . . . . . . . . . . . . . . . . . . . 60
6.2. Trabajo futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Agradecimientos

Apéndices

A. Script: cambiar hostname

B. Script: copiar clave pública

C. Script: ssh a nodos

62

63

64

65

66

5

Índice de cuadros

. . . . . . . . . . . . . . . . . . . . . 15
2.1. Distribución de horas de trabajo según rol.
2.2. Costes asociados a recursos humanos.
. . . . . . . . . . . . . . . . . . . . . . . . 19
2.3. Costes derivados de la compra de Hardware. . . . . . . . . . . . . . . . . . . . . . 19
. . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4. Desglose de los gastos generales.
2.5. Resumen presupuesto total.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.1. Software stack de Triolith (14)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2. Software stack de IBM (7) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.3. Software stack de Tianhe-2 (12) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

4.1. Stack de software a usar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.2. Tiempos para precisión simple de ATLAS . . . . . . . . . . . . . . . . . . . . . . 53
4.3. Tiempos para precisión doble de ATLAS . . . . . . . . . . . . . . . . . . . . . . . 53

6

Índice de figuras

2.1. Listado de Tareas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2. Diagrama de Gantt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3. Estado del Laboratorio C6-103 al llegar.
. . . . . . . . . . . . . . . . . . . . .
  • Links de descarga
http://lwp-l.com/pdf9903

Comentarios de: Diseño y evaluación de un clúster HPC: Software de sistema (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad