SGI Altix ICE 8400 LX

O sistema SGI Altix ICE 8400 LX instalado no CENAPAD-SP tem 40 CPU´s (240 cores) Intel Xeon Six Core 5680 de 3.33GHz, 720 GB de memória RAM e interconexão Infiniband. A capacidade de processamento teórica deste sistema é de aproximadamente 3,1 TFLOPS.

Para utilizar este recurso, observe as seguintes informações:

SGI Altix ICE 8400 LX

O sistema Altix ICE 8400 LX instalado no CENAPAD-SP tem 20 nós, interconectados através de uma rede Infiniband de alto desempenho, dispostos em 2 individual Rack Unit (iRU), cada um deles com desempenho teórico de 160 GFLOPs e com a seguinte configuração:

O nó de acesso ao sistema SGI Altix ICE é ice.cenapad.unicamp.br.

Sistema Operacional

Linux.

Voltar ao topo

Compiladores e Bibliotecas

Voltar ao topo

Usuários

A administração deste sistema está integrada ao ambiente do CENAPAD-SP: são mantidos os mesmos projetos e usuários do ambiente do CENAPAD-SP, com a mesma senha.

Voltar ao topo

Acesso

O acesso ao sistema SGI Altix ICE deve ser feito através de um nó definido como front-end, usando o comando ssh. Para isto, uma vez conectado ao ambiente do CENAPAD-SP, o usuário deverá executar: ssh ice (utilizando o mesmo usuário e a mesma senha do CENAPAD-SP)

Voltar ao topo

Diretórios HOME

Os diretórios home dos usuários do CENAPAD-SP não são compartilhados entre todos os ambientes existentes (IBM P750 e SGI Ice) devido à diferença de arquiteturas entre estes ambientes instalados no CENAPAD-SP, composto por máquinas IBM com processadores da família Power e sistema operacional AIX e máquinas SGI com processadores Intel Xeon e sistema operacional Linux.

No ambiente SGI/Ice, o espaço para diretório home dos usuários é de 32 TB. O padrão para a identificação do diretório home de um determinado usuário nas máquinas deste sistema é:

(onde login é a identificação da conta do usuário e projeto é a identificação do projeto a que a conta está vinculada);

Observação: Atualmente, ainda não é feito backup de qualquer arquivo deste ambiente, portanto os usuários serão temporariamente responsáveis pela manutenção de seus arquivos.

Voltar ao topo

Área de Scratch

Existe nesse ambiente uma área scratch para gravação dos arquivos temporários gerados durante o processamento dos jobs. Essa área tem 23 TB, e deve ser referenciada como :

/workice

Voltar ao topo

Espaço em disco

Além do filesystem para o diretório home dos usuários, o filesystem /usr/local também é compartilhado por todo o ambiente SGI/Ice.

Os softwares são instalados no filesystem: /usr/local.

As políticas de uso podem ser consultadas aqui

Voltar ao topo

Contabilização de uso

A contabilização de uso deste sistema é feita de forma integrada à contabilização de uso de recursos do ambiente CENAPAD-SP descritas aqui

Voltar ao topo

Execução de jobs

Apenas o frontend (ice) permite acesso interativo, enquanto os outros nodes são reservados para o processamento batch. O sistema gerenciador de filas, responsável pela execução de jobs, é o PBSPro

Alguns dos principais comandos do PBSPro são:

Comando Descrição
qsub para submissão de jobs
qalter para modificar jobs pendente
qmove para mover jobs
qdel para remoção de jobs das filas
qhold para alterar o estado de jobs para hold
qorder para reordenar jobs
qrls para liberar jobs em estado hold
qselect para selecionar jobs
qstat exibe o estado de filas e jobs
tracejob para obter o histórico de
xpbs interface gráfica do PBSPro

(As informações sobre estes comandos também estão disponíveis em suas manpages)

Comando Descrição
qsub jobscript submit jobscript to PBS
qsub -I submit an interactive-batch job
qsub -q queue submit job directly to specified queue
qstat list information about queues and jobs
qstat -q list all queues on system
qstat -Q list queue limits for all queues
qstat -a list all jobs on system
qstat -au userid list all jobs owned by user userid (returns jobid)
qstat -s list all jobs with status comments
qstat -r list all running jobs
qstat -f jobid list all information known about specified job
qstat -Qf queue list all information known about specified queue
qstat -B list summary information about the PBS server
qdel jobid delete job jobid
qalter jobid modify the attributes of the job or jobs specified by jobid
pbsnodes -a indicates which nodes are currently up and some node characteristics.
pbsnodes -l indicates which nodes are currently offline
qstat -n to view the list nodes allocated to jobs
qstat -ans -u {username} this will show the nodes, jobid's of a given {username}

Para submeter um job:

Diretivas mais comuns:

#PBS -S /bin/sh
#PBS -m abe
#PBS -q par48
#PBS -N testjob
#PBS -V
#PBS -o jobout
#PBS -e joberr
#!/bin/sh
cd $PBS_O_WORKDIR

Onde:

Voltar ao topo

Jobs paralelos

A execução de jobs paralelos, pode ser feita através da submissão de um script ou de um arquivo binário. Por exemplo, o arquivo jobpar.sh pode conter:

Ou então:

Neste caso, acrescenta-se a diretiva PBS -l que especifica os recursos necessários para a execução do job.

Para uma execução em paralelo, o principal recurso é o número de processadores que serão utilizados. No ambiente ICE, há algumas particularidades em relação ao uso dessa diretiva.

Em todos os casos, ppn=(n) tem o valor máximo de 12 (ppn=12), pois esse é o número de processadores (CPUs) de cada um dos Nós ICE. Detalhes sobre as características das filas parice, par48 e exp96 encontram-se abaixo.

Voltar ao topo

Jobs multiprocessados

Programas multiprocessados são programas que utilizam recursos de mais de um processador, mas compartilhando uma única memória (Ambiente SMP). Normalmente, são programas que utilizam recursos de diretivas OpenMP ou são programas paralelizados autom´ticamente por alguns compiladores, com a opção -parallel, como é o caso do Compilador Fortran e C da Intel, do nosso ambiente. A execução de jobs pode ser feita através da submissão de um script ou de um arquivo binário. Por exemplo, o arquivo jobsmp.sh pode conter:

A diretiva PBS -l deve especificar nodes e ppn, e será necessário definir uma variável de ambiente, OMP_NUM_PROCS, que especifica o número de processadores que serão utilizados pelo programa, no ambiente SMP.

OBS: Atenção! A opção de auto-paralelização, -parallel, não garante uma melhora de performance na execução do programa. A paralelização normalmente ocorre em "loops" que o programa possuir.

Voltar ao topo

Intel MPI

Para uso do Intel MPI é necessário compilar os programas com os scripts de compilação da Intel (wrappers mpi).

A seguir são descritos os passos para uso do Intel MPI:

Voltar ao topo

Filas

As filas, e restrições, definidas no PBSPro são:

Fila Num Max jobs exec Num Max cpus / job Tempo Max uso cpu Tempo Max (elapsed) Num Max jobs / user
parice 6 12 (fixo) 3672 hs 360 hs 2
par48 1 48 (fixo) 4896 hs 120 hs 1
exp96 1 96 (fixo) 1958 hs 24 hs 1

Voltar ao topo