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 |
| 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 |
- 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.