Atención:
Instalados desde el día 22/2/2007 nuevos ordenadores.
Llamados erwin, mulliken, koopmans,hund, herzberg.
En breve se publicará la web, sobre la utilización de los mismos.
|
Descripción
Para el soporte al cálculo científico del ICMOL, se
adquirió a principios del año 2004 un nuevo sistema de altas prestaciones.
Actualmente se encuentra en período de producción. Se trata de
dos sistema SGI Altix 350, uno de los ordenadores tiene
12 procesadores a 1400 Mhz Itanium 2 y 18 GB de memoría RAM y 2,3 Teras de
área de Scratch llamada /scr, el ordenador tiene el nombre de
bohr. El otro ordenador llamado born es un SGI
Altix 350 con 4 procesadores a 1500 Mhz Itanium 2 y 8 GB de RAM con 1 Tera
de área de Scratch llamada /scr.
Ampliación del Altix 350 ordenador born.
Con la instalación de este nuevo ordenador born pueden el
cluster llegará a poder tener simulanemente procesando un total de 19 jobs
repartidos en 12 jobs en el ordenador bohr, 2 en el ordenador born y 3 en
los PC con procesadores Atlhon de 64 bits. Debemos de tener en
cuenta que los jobs procesados en este ordenador se deberán de "lanzar"
sobre las colas gran_rap y gran_rap2p, gran_rap a 1 procesador y
gran_rap2p a 2 procesadores.
Hardware
Las características más relevantes del nuevo equipo
son:
- Estación de control:
- Nombre: bohr
- Modelo: Altix 350
- Sistema Operativo SUSE Linux Enterprise Server
- Procesadores: 12 procesadores Itanium 2 a 1400 MHz.
- 18GB de memoria RAM.
- 1 disco de 72 GB como discos de sistema.
- 8 discos de 300 Gb, con un total de área de Scratch será de
2,2 Teras, el área será /scr
- Nodo de cálculo SGI Altix:
- Nombre: born
- Modelo: Altix 350
- Sistema Operativo SUSE Linux Enterprise Server
- Procesadores: 4 procesadores Itanium 2 a 1500 MHz.
- 8 GB de memoria RAM.
- 1 disco de 72 GB como discos de sistema.
- 7 discos de 160 Gb con un total de área de Scratch será de
1Tera, el área será /scr

Software ordenadores Altix 350 bohr, born
- Versión del sistema operativo El sistema operativo Linux, en
concreto una versión desarrollada por SGI de Red Sistema Operativo SUSE
Linux Enterprise Servery y con Kernel 2.6.5-7.282.
- Compiladores de C/C++ xlc y vacC 5.0 Compilador de Fortran77 y
Fortran90 xlf 7.1.0.0, compilador de SGI y de Intel con licencia en el
Servei de Informática
- Sistema de gestión de colas batch LSF.
- Sotware de Química Computacional:
- Gaussian 03 ver d02.
- Molcas,Mopac, Gamess, etc...
Acceso al sistema
A bohr sólo se puede (y debe)
acceder desde Qfgate
(Slater visto desde la red del campus). Esta máquina sólo
proporciona servicios de red a los hosts de la subred de cálculo.
Son las mismas restricciones de acceso que se aplica a
Huckel y a los nodos del SP2. Además, no
es posible iniciar sesiones interactivas sobre los nodos del
SP2, aunque se pueden utilizar los servicios de
transferencia de ficheros habituales (ftp, rcp y scp).
Configuración del sistema de colas
La versión actual del sistema de colas LSF es la
misma versión del sistema de colas que está instalada en el ordenador del
Servicio de Informática.
Configuración de las colas
En la tabla siguiente se muestra la configuración
actual de las colas batch definidas en LSF. Como
siempre, esta configuración es provisional y es fácil que, se produzcan
modificaciones para adecuar el sistema (maximizar el rendimiento) al
número y tipo de los trabajos. Detalles de la configuración en uso en cada
momento se pueden obtener mediante el comando bqueues -l donde se
indica los tipos de colas instalados tiempo de CPU y número máximo de jobs
que pueden estar funcionando en cada momento.. El
número máximo de trabajos en máquina está en 15 trabajos
simultáneos (depende también de los jobs lanzados en paralelo, si existen
disminuirá el número de jobs al limitar que no pueda un procesador
trabajar con 2 jobs a la vez), limitándolo a 3 trabajos
por tipo de cola y usuario. Distribución de los jobs
en el ordenador Altix 350.
Nombre de la cola: |
petita |
mitjana |
gran |
gran_p |
gran_rap |
gran_rap2p |
Priority (system): |
100 |
50 |
0 |
0 |
0 |
0 |
Max_processors: |
1 |
1 |
7 |
5 |
3 |
1 |
Maxjobs: |
12 |
10 |
9 |
9 |
9 |
1 |
Wall_clock_limit(*): |
15:00 |
40:00 |
850:00 |
850:00 |
850:00 |
850:00 |
Cpu_limit(*): |
12:00 |
30:00 |
744:00 |
744:00 |
744:00 |
744:00 |
Core_limit(*): |
10 MB |
10 MB |
10 MB (10 MB) |
10 MB |
10 MB |
10 MB |
Nª Procesadores |
1 |
1 |
1 |
4 |
1 |
2 |
Ordenador que calcula |
bohr |
bohr |
bohr |
bohr |
born |
born |
Límites
Los límites de las Colas son los siguientes: No pueden
estar calculando más de 15 Trabajos a la vez y cada Usuario podrá tener
trabajando un máximo de 3 trabajos por cola, naturalmente los trabajos que
No entren en el sistema de Colas quedaran a la espera y cuando el sistema
de Colas LSF tenga espacio, entrarán los trabajos encolados. Primero
entrarán los de más prioridad los de las colas petita y mitjana dejando a
los trabajos de menos prioridad los de la cola gran, gran_rap y gran_p a
la espera. Recordar las colas gran_p y gran_rap2p admiten
trabajos en paralelo. Las nuevas colas de los atlones se
debería de mandar los jobs de los trabajos con la opción -m para asi
mandarlo al ordenador que este libre en ese momento.
Envío de trabajos al sistema de colas
Los trabajos se envían al sistema de colas mediante
el comando
bsub < fichero donde fichero es un script
de shell con la secuencia de comandos a ejecutar precedido por un
preámbulo de LSF que define la naturaleza y
características del trabajo.
Trabajando con un sistema de colas, Comandos interesantes
Envío de trabajos al sistema de colas LSF.
Los trabajos se
envían al sistema de colas mediante el comando: bsub <
fichero Para comprobar los jobs que estan en la Cola. bqueues
(Comprueba los trabajos que estan procesandose en este momento en el
sistema de colas). qstat -a (Muestra todos los trabajos que están en
funcionamiento, con el estado de los trabajos y los usuario que están
calculando en ese momento) Para eliminar un job del sistema de
colas. bkill Número del job (que previamente sabemos con el comando
qstat -a) Para comprobar las características de todas las
colas. bqueues -l Si se quiere saber solo las característica de una
cola en particular se especifica, ejemplo saber las características de la
cola gran bqueues -l gran
Forma de enviar un job
La forma de envíar un trabajo es la siguiente. Por
ejemplo, el siguiente fichero lleva a cabo un cálculo de
Gaussian03
Primero estará el ejemplo para lanzar un job al
ordenador bohr y luego otro ejemplo para lanzar un job al ordenador born
#! /bin/sh ###################### ## Lanzar un
trabajo por LSF en Gaussian ## ####################
#!/bin/bash # Fichero de salida #BSUB -o
salida.%P #Fichero de error #BSUB -e error.%P #Cola donde
se va a lanzar el job #BSUB -q gran_p #Por si la cola que se
utiliza es paralela, casi se indica cuantos procesadores utiliza, si
la cola no es paralela #no tiene sentido indicar esta opción ya
que solo utiliza un procesador #BSUB -n 1 # Número de horas
que esta el job en la CPU #BSUB -c 74:00 # Stack
limit #BSUB -S 700000
#Ahora incluimos algunas definiciones de Gaussian03 .
/util/g03/bsd/g03.profile # Directorio donde esta el
job DIR=/home/martin/trabajo # Fichero Input que se va a
calcular FILE="example1" # Definimos ahora las areas de
Scratch # Ahora lanzo el programa [ -d /scr/usuario ] || mkdir
/scr/usuario [ -d /scr/usuario/prueba1 ] || mkdir
/scr/usuario/prueba # Nos deberemos de posicionar sobre el
directorio el cual se van a realizar el job cd
/scr/usuario/prueba g03 < $DIR/$FILE.com >
/scr/martin/$FILE.log
|
#! /bin/sh ###################### ## Lanzar un trabajo
por LSF en Gaussian Para el ordenador born ##
####################
#!/bin/bash # Fichero de salida #BSUB -o salida.%P
#Fichero de error #BSUB -e error.%P #Cola donde se va a lanzar
el job #BSUB -q gran_rap
#BSUB -m born #Por si la cola que se utiliza es paralela, casi se
indica cuantos procesadores utiliza, si la cola no es paralela
#no tiene sentido indicar esta opción ya que solo utiliza un
procesador #BSUB -n 1 # Número de horas que esta el job en la
CPU #BSUB -c 74:00 # Stack limit #BSUB -S 700000
#Ahora incluimos algunas definiciones de Gaussian03 . /util/g03/bsd/g03.profile
# Directorio donde esta el job DIR=/home/martin/trabajo #
Fichero Input que se va a calcular FILE="example1" #
Definimos ahora las areas de Scratch # Ahora lanzo el programa
[ -d /scr/usuario ] || mkdir /scr/usuario [ -d /scr/usuario/prueba1
] || mkdir /scr/usuario/prueba # Nos deberemos de posicionar
sobre el directorio el cual se van a realizar el job cd /scr/usuario/prueba
g03 < $DIR/$FILE.com > /scr/martin/$FILE.log |
|