SubmissaoSimplificada » History » Version 8
Gabriel Winckler, 13 Aug 2013 15:59
| 1 | 1 | Gabriel Winckler | h1. Sistema de Submissão Simplificada (GO) |
|---|---|---|---|
| 2 | 1 | Gabriel Winckler | |
| 3 | 1 | Gabriel Winckler | {{>toc}} |
| 4 | 1 | Gabriel Winckler | |
| 5 | 2 | Gabriel Winckler | h2. Introdução |
| 6 | 2 | Gabriel Winckler | |
| 7 | 1 | Gabriel Winckler | 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: |
| 8 | 1 | Gabriel Winckler | |
| 9 | 1 | Gabriel Winckler | * Submissão simplificada da simulação |
| 10 | 1 | Gabriel Winckler | * Acompanhamento do progresso durante a execução |
| 11 | 1 | Gabriel Winckler | * Salvar e recuperar checkpoints |
| 12 | 1 | Gabriel Winckler | * Suporte a grandes arquivos de entrada e saída |
| 13 | 1 | Gabriel Winckler | * Flexibilidade na descrição de arquivos de saída |
| 14 | 1 | Gabriel Winckler | * Utilização automática de diretórios temporários |
| 15 | 2 | Gabriel Winckler | * Facilitar depuração de erros |
| 16 | 1 | Gabriel Winckler | |
| 17 | 1 | Gabriel Winckler | 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. |
| 18 | 1 | Gabriel Winckler | |
| 19 | 1 | Gabriel Winckler | 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)* |
| 20 | 1 | Gabriel Winckler | |
| 21 | 1 | Gabriel Winckler | h2. Aplicativos suportados |
| 22 | 1 | Gabriel Winckler | |
| 23 | 1 | Gabriel Winckler | 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. |
| 24 | 1 | Gabriel Winckler | |
| 25 | 1 | Gabriel Winckler | |
| 26 | 1 | Gabriel Winckler | |Nome |Status |Versão|Serial|SMP|MPI|Chekpoint|Progress| |
| 27 | 1 | Gabriel Winckler | |[[BEAST]] |OK |1.6.1 |S |S |N |N |S | |
| 28 | 1 | Gabriel Winckler | |[[Clustalw]] |OK |1.82 |N |N |S |N |S | |
| 29 | 1 | Gabriel Winckler | |[[Crystal]] |teste |09 |S |N |? |? |S | |
| 30 | 1 | Gabriel Winckler | |[[Dacapo]] |teste |r474 |S |N |S |S |S | |
| 31 | 4 | Gabriel Winckler | |[[Dirac]] |teste |11 |S |N |S |? |S | |
| 32 | 1 | Gabriel Winckler | |[[Gamess]] |OK |2009 |S |N |S |? |ni | |
| 33 | 1 | Gabriel Winckler | |[[Gamit]] |OK |10.4 |S |N |N |? |ni | |
| 34 | 1 | Gabriel Winckler | |[[Garli]] |teste |2.0 |S |N |S |N |S | |
| 35 | 1 | Gabriel Winckler | |[[Gaussian]] |OK |09 |S |S |S |S |S | |
| 36 | 1 | Gabriel Winckler | |[[GPAW]] |teste |0.8.0 |S |N |S |S |S | |
| 37 | 1 | Gabriel Winckler | |[[Gromacs]] |OK |4.5.4 |S |S |S |T |S | |
| 38 | 1 | Gabriel Winckler | |[[IM]] |teste |12_17_2009 |S |N |N |S |S | |
| 39 | 1 | Gabriel Winckler | |[[IMa2]] |teste |8.26.11 |S |N |N |N |S | |
| 40 | 1 | Gabriel Winckler | |!InterproScan |planejado | | | | | | | |
| 41 | 1 | Gabriel Winckler | |[[LAMMPS]] |teste |18_10_2011|S |ni |S |? |S | |
| 42 | 8 | Gabriel Winckler | |[[MOPAC]] |OK |2012 |S |? |N |N |S | |
| 43 | 1 | Gabriel Winckler | |[[MrBayes]] |OK |3.1.2 |S |N |S |? |ni | |
| 44 | 1 | Gabriel Winckler | |[[Mugsy]] |teste |1.2.1 |S |N |N |N |S | |
| 45 | 1 | Gabriel Winckler | |[[NAMD]] |OK |2.7 |ni |N |S |? |ni | |
| 46 | 6 | Gabriel Winckler | |[[OpenFOAM]] |teste |2.1 |S |N |S |? |? | |
| 47 | 1 | Gabriel Winckler | |[[Orca]] |OK |r1730 |S |N |? |S |S | |
| 48 | 7 | Gabriel Winckler | |[[Python]]* |OK |2.7 |S |S |S |- |- | |
| 49 | 1 | Gabriel Winckler | |[[POY]] |teste |4.1.2 |S |N |S |? |ni | |
| 50 | 1 | Gabriel Winckler | |[[QuantumEspresso]] |teste |4.3 |S |N |S |? |S | |
| 51 | 1 | Gabriel Winckler | |[[RAxML]] |teste |7.3.0 |S |S |S |N |S | |
| 52 | 1 | Gabriel Winckler | |
| 53 | 1 | Gabriel Winckler | Legenda: |
| 54 | 1 | Gabriel Winckler | |S |recurso implementado| |
| 55 | 1 | Gabriel Winckler | |N |recurso não suportado pelo software| |
| 56 | 1 | Gabriel Winckler | |T |recurso em fase de testes| |
| 57 | 1 | Gabriel Winckler | |ni|recurso disponibilizado pelo software, mas não implementado no *go*| |
| 58 | 1 | Gabriel Winckler | |? |informação não disponível| |
| 59 | 7 | Gabriel Winckler | |
| 60 | 7 | Gabriel Winckler | [*] Módulos adicionais de Python |
| 61 | 7 | Gabriel Winckler | * SciPy |
| 62 | 7 | Gabriel Winckler | * NumPy |
| 63 | 7 | Gabriel Winckler | * matplotlib |
| 64 | 7 | Gabriel Winckler | * mpi4py |
| 65 | 7 | Gabriel Winckler | * networkx |
| 66 | 7 | Gabriel Winckler | * emcee |
| 67 | 1 | Gabriel Winckler | |
| 68 | 3 | Gabriel Winckler | h2. Aplicativos compilados pelo próprio usuário |
| 69 | 3 | Gabriel Winckler | |
| 70 | 3 | Gabriel Winckler | Com o go é possível também enviar arquivos desenvolvidos ou compilados pelo próprio usuário. |
| 71 | 3 | Gabriel Winckler | |
| 72 | 3 | Gabriel Winckler | Mais detalhes estão [[SubmissaoSimplificadaCustom|aqui]]. |
| 73 | 3 | Gabriel Winckler | |
| 74 | 1 | Gabriel Winckler | |
| 75 | 2 | Gabriel Winckler | h2. Utilização |
| 76 | 2 | Gabriel Winckler | |
| 77 | 2 | Gabriel Winckler | * Crie um arquivo de parâmetros (ex: caso.go) como explicado abaixo |
| 78 | 2 | Gabriel Winckler | * Crie um certificado de proxy (myproxy-logon) com uma duração maior que a do seu job |
| 79 | 2 | Gabriel Winckler | * Execute "go caso.go" |
| 80 | 2 | Gabriel Winckler | |
| 81 | 2 | Gabriel Winckler | 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". |
| 82 | 2 | Gabriel Winckler | |
| 83 | 2 | Gabriel Winckler | Caso você tenha especificado checkpoints ou arquivos de progresso, eles serão automaticamente copiados para esse diretório. |
| 84 | 2 | Gabriel Winckler | |
| 85 | 2 | Gabriel Winckler | *IMPORTANTE: NÃO USE ESPAÇOS NOS NOMES DOS ARQUIVOS* |
| 86 | 2 | Gabriel Winckler | |
| 87 | 2 | Gabriel Winckler | h2. Opções |
| 88 | 2 | Gabriel Winckler | |
| 89 | 2 | Gabriel Winckler | h3. Opções gerais |
| 90 | 2 | Gabriel Winckler | |
| 91 | 2 | Gabriel Winckler | * 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) |
| 92 | 2 | Gabriel Winckler | * HOSTS - Número de hosts (processos) para a execução. *Padrão*: 1 |
| 93 | 2 | Gabriel Winckler | * QUEUE - Fila do processo. Opções: short (até 3 horas), medium (até 24 horas), long (sem limite) *Padrão*: medium (24 horas) |
| 94 | 2 | Gabriel Winckler | * LARGE_FILES - Suporte a arquivos de simulação maiores que 8GB. *Padrão*: false |
| 95 | 2 | Gabriel Winckler | * NOTIFY - Escolhe quais notificação serão enviadas por email. "NOTIFY=" desabilita o envio. |
| 96 | 2 | Gabriel Winckler | |
| 97 | 2 | Gabriel Winckler | h3. Opções *avançadas* (geralmente não são necessárias!) |
| 98 | 2 | Gabriel Winckler | |
| 99 | 2 | Gabriel Winckler | * EXEC - executável |
| 100 | 2 | Gabriel Winckler | * TRANSFER_EXEC - se transfere o executável |
| 101 | 2 | Gabriel Winckler | * ARGS - argumentos |
| 102 | 2 | Gabriel Winckler | * INPUT - arquivos de entrada, *separados por espaço* |
| 103 | 2 | Gabriel Winckler | * OUTPUT - arquivos de saída, *separados por espaço* |
| 104 | 2 | Gabriel Winckler | * PROGRESS - arquivo que exibe o progresso da simulação |
| 105 | 2 | Gabriel Winckler | * WAIT_PROGRESS - tempo de atualização do progresso, em segundos. *Padrão*: 15 min. |
| 106 | 2 | Gabriel Winckler | * CHECKPOINT - arquivo de checkpoint |
| 107 | 2 | Gabriel Winckler | * WAIT_CHECKPOINT - tempo de atualização do checkpoint, em segundos. *Padrão*: 3 horas. |
| 108 | 2 | Gabriel Winckler | * HOSTS - Número de hosts (processos) para a execução. *Padrão*: 1 |
| 109 | 2 | Gabriel Winckler | * PPH - Process per host. Opção para programas SMP |
| 110 | 2 | Gabriel Winckler | * MPI - Se o executável deve ser chamado em ambiente MPI (True ou False). |
| 111 | 2 | Gabriel Winckler | |
| 112 | 1 | Gabriel Winckler | h2. Exemplo passo-a-passo |
| 113 | 1 | Gabriel Winckler | |
| 114 | 1 | Gabriel Winckler | Segue um exemplo completo utilizando o software "Orca". As opções específicas de cada aplicação estão a seguir. |
| 115 | 1 | Gabriel Winckler | |
| 116 | 2 | Gabriel Winckler | h3. Prepare os arquivos de entrada |
| 117 | 1 | Gabriel Winckler | |
| 118 | 1 | Gabriel Winckler | Prepare os arquivos de entrada da aplicação. Nesse caso usaremos nome_do_caso.inp (arquivo do orca). |
| 119 | 1 | Gabriel Winckler | |
| 120 | 1 | Gabriel Winckler | *IMPORTANTE: NÃO USE ESPAÇOS NOS NOMES* |
| 121 | 1 | Gabriel Winckler | |
| 122 | 1 | Gabriel Winckler | caso_de_teste.inp |
| 123 | 1 | Gabriel Winckler | <pre> |
| 124 | 1 | Gabriel Winckler | ! HF SVP |
| 125 | 1 | Gabriel Winckler | |
| 126 | 1 | Gabriel Winckler | * xyz 0 1 |
| 127 | 1 | Gabriel Winckler | C 0.0 0.0 0.0 |
| 128 | 1 | Gabriel Winckler | O 0.0 0.0 1.13 |
| 129 | 1 | Gabriel Winckler | * |
| 130 | 1 | Gabriel Winckler | </pre> |
| 131 | 1 | Gabriel Winckler | |
| 132 | 1 | Gabriel Winckler | h3. Prepare o arquivo .go |
| 133 | 1 | Gabriel Winckler | |
| 134 | 1 | Gabriel Winckler | caso_de_teste.go |
| 135 | 1 | Gabriel Winckler | <pre><code class="bash"> |
| 136 | 1 | Gabriel Winckler | APP=orca |
| 137 | 1 | Gabriel Winckler | QUEUE=short |
| 138 | 1 | Gabriel Winckler | </code></pre> |
| 139 | 1 | Gabriel Winckler | |
| 140 | 1 | Gabriel Winckler | h3. Crie um proxy |
| 141 | 1 | Gabriel Winckler | <pre> |
| 142 | 1 | Gabriel Winckler | myproxy-logon |
| 143 | 1 | Gabriel Winckler | </pre> |
| 144 | 1 | Gabriel Winckler | |
| 145 | 1 | Gabriel Winckler | h3. Submeta a simulação |
| 146 | 1 | Gabriel Winckler | <pre> |
| 147 | 1 | Gabriel Winckler | go caso_de_teste.go |
| 148 | 1 | Gabriel Winckler | </pre> |
| 149 | 1 | Gabriel Winckler | |
| 150 | 1 | Gabriel Winckler | h3. Verificando o status |
| 151 | 1 | Gabriel Winckler | |
| 152 | 1 | Gabriel Winckler | Você pode verificar o status com o comando: @condor_q $USER -globus@. |
| 153 | 1 | Gabriel Winckler | |
| 154 | 1 | Gabriel Winckler | h3. Cancelando a execução |
| 155 | 1 | Gabriel Winckler | |
| 156 | 1 | Gabriel Winckler | 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. |