LaSCADo
  • Equipe
  • Sobre
  • Financiamento
  • Política de uso
  • Projetos
  • Hardware
  • Software
  • Como acessar
  • Dicas
  • Como chegar

Uso do Cluster IBM-AIX

Este guia contém informações básicas para o uso do Cluster IBM.

Acesso de dentro da FT

Conexão ao sistema IBM:

$ ssh usuario@143.106.243.190

Acesso de fora da FT

Para acesso de fora da FT primeiro é necessário se conectar em lascado.ft.unicamp.br.

$ ssh usuario@lascado.ft.unicamp.br

Após conectado a máquina lascado, conectar normalmente ao cluster IBM.

Execução de Jobs

Na máquina para uso interativo (xcat01.cluster.net), os usuários podem efetuar login e executar comandos, compilar programas, editar scripts, submeter jobs, etc.

As máquinas para processamento batch (node01, ..., node05) não permitem login pelos usuários, apenas processam os jobs submetidos por meio do LoadLeveler (Tivoli Workload Scheduler LoadLeveler V4.1). LoadLeveler é o sistema gerenciador de filas, responsável pela submissão e execução de jobs.

A documentação do software Loadleveler pode ser obtida em http://publib.boulder.ibm.com/infocenter/clresctr/vxrx/topic/com.ibm.cluster.loadl.doc/llbooks.html

Alguns dos principais comandos do LoadLeveler são:

  • llsubmit: para submissao de jobs
  • llmodify: para modificar jobs pendente
  • llcancel: para remocao de jobs das filas
  • llstatus: exibe o estado dos nós
  • llq: exibe o estado dos jobs
  • llclass: exibe a configuração e o estado das filas

Main informações através das man pages (ex.: $ man llq).

Submissão de Jobs

Para submeter um job para execução no ambiente IBM P755 do LaSCADo, o usuário deve:

  1. Criar um arquivo com diretivas sobre o job a ser executado

  2. Submeter o job, executando o comando

$ llsubmit arquivo_de_diretrizes

Filas

Os jobs em execução ou aguardando a disponibilidade de recursos para execução são mantidos em uma fila. Quando um usuário submete um job ao LoadLeveler, este job é colocado nesta fila, que é uma base de dados com os jobs do sistema de filas.

A fila de jobs pode ser consultada através do comando llq.

O ambiente de processamento de jobs do LaSCADo está dividido em filas para processamento serial e paralelo.

Classe Número máximo de jobs simultâneos disponíveis Número máximo de processadores (cores) por job Limite de tempo processamento (horas)
Serial 25 1 720
Paralela 160 160 720

Obs: A única fila com limitações para usuários é a pequena com 2 jobs no máximo por usuário.

Jobs Serial

Um exemplo de script para job serial é (serial.cmd): ::

  # arquivo serial.cmd
  #!/bin/ksh
  #
  # @ class = serial
  # @ restart = no
  # @ output = t.out
  # @ error =  t.err
  # @ queue

  ./meu_programa_serial

Para submeter o exemplo de job serial acima basta apenas

$ llsubmit  serial.cmd 

Jobs Paralelos

Um exemplo de script para job paralelo (MPI) é (paralelo.cmd): ::

  # arquivo paralelo.cmd
  #!/bin/ksh
  #
  # @ class = paralela
  # @ restart = no
  # @ output = t.out
  # @ error =  t.err
  # @ job_type = parallel
  # @ node = 2
  # @ tasks_per_node = 8
  # @ network.MPI = sn_single,shared,us
  # @ checkpoint = no
  # @ queue

  /usr/bin/poe -np 16 meu_programa_mpi_poe -infolevel 2

Esse exemplo executa 16 processos (8 tasks em 2 nós).

Para submeter o exemplo de job paralelo acima basta apenas

$ llsubmit paralelo.cmd 

Como usar os compiladores (localizados em /usr/vac/bin e /usr/vacpp/bin e /usr/lpp/ppe.poe/bin):

Serial

xlc -g -q64 -qarch=pwr7 -qtune=pwr7

xlf -g -q64 -qarch=pwr7 -qtune=pwr7

Paralelo

mpxlc_r -g -q64 -qarch=pwr7 -qtune=pwr7

mpxlf90_r -g -q64 -qfree -qarch=pwr7 -qtune=pwr7

mpxlf -g -q64 -qarch=pwr7 -qtune=pwr7

Observação importante: Para gerar um código 64 bits é necessário utilizar a flag -q64 na compilação e, na execução, definir a variável de ambiente:

export OBJECT_MODE=64

Como usar as bibliotecas científicas:

 + ESSL = -lessl -lpessl
 + MPI = -L/usr/lpp/ppe.poe/lib/ -lmpi
 + LIBS = $(ESSL) $(MPI)

Nós IBM System x (processadores Intel Xeon): - Intel Fortran - Intel C - Intel MKL (Math Kernel Library)

 

LaSCADO - FT/UNICAMP/Limeira