SubmissaoSimplificada » History » Version 7

« Previous - Version 7/21 (diff) - Next » - Current version
Gabriel Winckler, 07 Feb 2013 15:04


Sistema de Submissão Simplificada (GO)

Introdução

Avaliando a utilização do sistema e tentando sempre facilitar a utilização dos recursos, foram identificadas algumas facilidades que não estavam presentes nas ferramentas tradicionais de grid de forma que sua ausência prejudicava a adoção do grid por parte dos usuários. Por essa razão, foi desenvolvido um método de submissão simplificado, batizado de go, que oferece as seguintes vantagens:

  • Submissão simplificada da simulação
  • Acompanhamento do progresso durante a execução
  • Salvar e recuperar checkpoints
  • Suporte a grandes arquivos de entrada e saída
  • Flexibilidade na descrição de arquivos de saída
  • Utilização automática de diretórios temporários
  • Facilitar depuração de erros

Ainda estão previstas novas melhorias, como a cópia de grandes arquivos em duas etapas, um sistema de acompanhamento de processos via web e um sistema que direcione automaticamente os processos para os recursos mais adequados.

Esse sistema permite a criação de templates para aplicações específicas, facilitando o seu uso. A lista das aplicações suportadas por esse mecanismo está descrita abaixo. Porém esse sistema permite a utilização de qualquer aplicação, incluindo as desenvolvidas ou compiladas pelos próprios usuários. Recomendamos o uso dessa ferramenta para todos os usuários (básicos e avançados)

Aplicativos suportados

O sistema permite o envio de um programa desenvolvido e compilado pelo usuário. Porém conta também com modelos simplificados para algumas as aplicações que damos suporte. Esperamos expandir o número de aplicações suportadas.

Nome Status Versão Serial SMP MPI Chekpoint Progress
BEAST OK 1.6.1 S S N N S
Clustalw OK 1.82 N N S N S
Crystal teste 09 S N ? ? S
Dacapo teste r474 S N S S S
Dirac teste 11 S N S ? S
Gamess OK 2009 S N S ? ni
Gamit OK 10.4 S N N ? ni
Garli teste 2.0 S N S N S
Gaussian OK 09 S S S S S
GPAW teste 0.8.0 S N S S S
Gromacs OK 4.5.4 S S S T S
IM teste 12_17_2009 S N N S S
IMa2 teste 8.26.11 S N N N S
!InterproScan planejado
LAMMPS teste 18_10_2011 S ni S ? S
MrBayes OK 3.1.2 S N S ? ni
Mugsy teste 1.2.1 S N N N S
NAMD OK 2.7 ni N S ? ni
OpenFOAM teste 2.1 S N S ? ?
Orca OK r1730 S N ? S S
Python* OK 2.7 S S S - -
POY teste 4.1.2 S N S ? ni
QuantumEspresso teste 4.3 S N S ? S
RAxML teste 7.3.0 S S S N S
Legenda:
S recurso implementado
N recurso não suportado pelo software
T recurso em fase de testes
ni recurso disponibilizado pelo software, mas não implementado no go
? informação não disponível
[*] Módulos adicionais de Python
  • SciPy
  • NumPy
  • matplotlib
  • mpi4py
  • networkx
  • emcee

Aplicativos compilados pelo próprio usuário

Com o go é possível também enviar arquivos desenvolvidos ou compilados pelo próprio usuário.

Mais detalhes estão aqui.

Utilização

  • Crie um arquivo de parâmetros (ex: caso.go) como explicado abaixo
  • Crie um certificado de proxy (myproxy-logon) com uma duração maior que a do seu job
  • Execute "go caso.go"

Isso cria e envia o seu job para o grid. Caso não queira enviar imediatamente, utilize a opção "-nosubmit". O arquivo de submissão será criado com o nome de "caso.go.submit".

Caso você tenha especificado checkpoints ou arquivos de progresso, eles serão automaticamente copiados para esse diretório.

IMPORTANTE: NÃO USE ESPAÇOS NOS NOMES DOS ARQUIVOS

Opções

Opções gerais

  • CASE - Nome do caso. Define o nome de arquivos de entrada, log e saida. Padrão: (nome do arquivo de parâmetros, sem a extensão)
  • HOSTS - Número de hosts (processos) para a execução. Padrão: 1
  • QUEUE - Fila do processo. Opções: short (até 3 horas), medium (até 24 horas), long (sem limite) Padrão: medium (24 horas)
  • LARGE_FILES - Suporte a arquivos de simulação maiores que 8GB. Padrão: false
  • NOTIFY - Escolhe quais notificação serão enviadas por email. "NOTIFY=" desabilita o envio.

Opções avançadas (geralmente não são necessárias!)

  • EXEC - executável
  • TRANSFER_EXEC - se transfere o executável
  • ARGS - argumentos
  • INPUT - arquivos de entrada, separados por espaço
  • OUTPUT - arquivos de saída, separados por espaço
  • PROGRESS - arquivo que exibe o progresso da simulação
  • WAIT_PROGRESS - tempo de atualização do progresso, em segundos. Padrão: 15 min.
  • CHECKPOINT - arquivo de checkpoint
  • WAIT_CHECKPOINT - tempo de atualização do checkpoint, em segundos. Padrão: 3 horas.
  • HOSTS - Número de hosts (processos) para a execução. Padrão: 1
  • PPH - Process per host. Opção para programas SMP
  • MPI - Se o executável deve ser chamado em ambiente MPI (True ou False).

Exemplo passo-a-passo

Segue um exemplo completo utilizando o software "Orca". As opções específicas de cada aplicação estão a seguir.

Prepare os arquivos de entrada

Prepare os arquivos de entrada da aplicação. Nesse caso usaremos nome_do_caso.inp (arquivo do orca).

IMPORTANTE: NÃO USE ESPAÇOS NOS NOMES

caso_de_teste.inp

! HF SVP

* xyz 0 1
  C 0.0 0.0 0.0
  O 0.0 0.0 1.13
*

Prepare o arquivo .go

caso_de_teste.go

APP=orca
QUEUE=short

Crie um proxy
myproxy-logon

Submeta a simulação
go caso_de_teste.go

Verificando o status

Você pode verificar o status com o comando: condor_q $USER -globus.

Cancelando a execução

Para interromper uma simulação, utilize o comando: condor_rm jobid , onde jobid é o identificador do job, disponível no arquivo de log ou no comando de status.

Also available in: PDF HTML TXT