Submeter binários no Grid Engine 6 O Grid Engine 6 suporta a submissão direta de binários via qsub e qrsh através do novo argumento - b yn. O comportamento padrão assume - b n. Use - b y para invocar diretamente um executável binário. Workgroupcluster: www qrsh - b y / usr / bin / uptime 7:49 até 107 dias, 35 mins, 0 usuários, médias de carga: 0.12 0.03 0.01 workgroupcluster: O comando qsub (1) não pode ser usado para enviar diretamente arquivos binários como jobs. Embora se possa escrever um pequeno script wrapper em torno de binários para enviá-los, existem duas técnicas convenientes para enviar binários como trabalhos de forma muito simples, sem envolver um script separado. Digite o comando qsub, junto com quaisquer opções e sinalizadores desejados e, em seguida, pressione return sem especificar um script de job. Você verá um prompt do shell secundário. Neste prompt, você pode digitar o nome do binário. Você pode então pressionar retornar e continuar a digitar mais comandos binários ou shell. Quando terminar de especificar seu trabalho, pressione Control-D. Qsub - l archsolaris64 sleep 60 ltctrl-Dgt o seu trabalho 47427 (quotSTDINquot) foi enviado Digite o comando qsub, juntamente com quaisquer sinalizadores e opções desejados, em seguida, use a construção de redirecionamento STDIN ltlt ltMARKERgt. Digite uma ou mais linhas contendo qualquer combinação de binários e comandos shell no prompt secundário como acima. Em seguida, em uma linha por si só, digite o ltMARKERgt e pressione retornar. Qsub - N teste ltlt EOF sono 60 EOF seu trabalho 47428 (quottestquot) foi submetido Ambas as técnicas acima aproveitar o fato de qsub usa o fluxo STDIN como um script de trabalho, se você não especificar um arquivo de script como um argumento. Para integrar perfeitamente determinados aplicativos em seu ambiente com um cluster do Grid Engine, talvez seja necessário gravar um script de wrapper personalizado que faça algum trabalho de configuração antes de executar um trabalho. A segunda técnica de cima pode ser incorporada em tais scripts de wrapper. Exemplo: crie um wrapper para enviar um trabalho batch binário de um SunRay para um farm back-end. Para fazer isso, é necessário modificar a variável LDPRELOAD para remover a entrada específica do SunRay. Um binário genérico submit wrapper script quotqbsubquot pode ser encontrado neste link. Ele pode ser usado como uma versão quotbinary de qsub. O script wrapper permite que o remetente use os sinalizadores de envio padrão e também contabiliza os sinalizadores especificados no arquivo qtask (que é usado pelo qtcsh ao enviar de forma transparente binários ao sistema). Um exemplo de uso deste script é: Isso executa o binário do netscape enquanto mantém explicitamente a variável de ambiente DISPLAY. NOTA: é claro que você precisa garantir que o binário corresponda à arquitetura na qual ele será executado. Você pode especificar isso, por exemplo, fazendo: Envio de binários no Grid Engine 6.x O Grid Engine 6 suporta a submissão direta de binários via qsub e qrsh através do novo argumento - b yn. O comportamento padrão assume - b n. Use - b y para invocar diretamente um executável binário. Workgroupcluster: www qrsh - b y / usr / bin / uptime 7:49 até 107 dias, 35 mins, 0 usuários, médias de carga: 0.12 0.03 0.01 workgroupcluster: O comando qsub (1) não pode ser usado para enviar diretamente arquivos binários como jobs. Embora se possa escrever um pequeno script wrapper em torno de binários para enviá-los, existem duas técnicas convenientes para enviar binários como trabalhos de forma muito simples, sem envolver um script separado. Digite o comando qsub, junto com quaisquer opções e sinalizadores desejados e, em seguida, pressione return sem especificar um script de job. Em seguida, você verá um prompt do shell secundário. Neste prompt, você pode digitar o nome do binário. Você pode então pressionar retornar e continuar a digitar mais comandos binários ou shell. Quando terminar de especificar seu trabalho, pressione Control-D. Qsub - l archsolaris64 sleep 60 ltctrl-Dgt o seu trabalho 47427 (quotSTDINquot) foi enviado Digite o comando qsub, juntamente com quaisquer sinalizadores e opções desejados, em seguida, use a construção de redirecionamento STDIN ltlt ltMARKERgt. Digite uma ou mais linhas contendo qualquer combinação de binários e comandos shell no prompt secundário como acima. Em seguida, em uma linha por si só, digite o ltMARKERgt e pressione retornar. Qsub - N teste ltlt EOF sono 60 EOF seu trabalho 47428 (quottestquot) foi submetido Ambas as técnicas acima aproveitar o fato de qsub usa o fluxo STDIN como um script de trabalho, se você não especificar um arquivo de script como um argumento. Para integrar perfeitamente determinados aplicativos em seu ambiente com um cluster do Grid Engine, talvez seja necessário gravar um script de wrapper personalizado que faça algum trabalho de configuração antes de executar um trabalho. A segunda técnica de cima pode ser incorporada em tais scripts de wrapper. Exemplo: crie um wrapper para enviar um trabalho batch binário de um SunRay para um farm back-end. Para fazer isso, é necessário modificar a variável LDPRELOAD para remover a entrada específica do SunRay. Um binário genérico submit wrapper script quotqbsubquot pode ser encontrado neste link. Ele pode ser usado como uma versão quotbinary de qsub. O script wrapper permite que o remetente use os sinalizadores de envio padrão e também contabiliza os sinalizadores especificados no arquivo qtask (que é usado pelo qtcsh ao enviar de forma transparente binários ao sistema). Um exemplo de uso deste script é: Isso executa o binário do netscape enquanto mantém explicitamente a variável de ambiente DISPLAY. NOTA: é claro que você precisa garantir que o binário corresponda à arquitetura na qual ele será executado. Você pode especificar isso, por exemplo, fazendo: Como enviar um trabalho usando qsub qsub é um comando usado para submissão ao cluster SGE. Na seção 2.1 Iniciação Rápida e noções básicas, mostramos que você pode enviar um trabalho de exemplo usando qsub da seguinte maneira: A sintaxe geral de como usar o qsub está abaixo. Aqui estão algumas das opções e suas explicações. - q ltqueuegt define a fila. Muitas vezes você usará a fila padrão, então não precisa configurar isso. - V passará todas as variáveis de ambiente para o job - v varvalue passará especificamente a variável de ambiente 39var39 para o comando job - b y allow para ser um arquivo binário em vez de um script. - w e verificar as opções e abortar se houver um erro - N nome do trabalho ltjobnamegt do trabalho. Isso você verá quando você usa qstat. Para verificar o status de seus trabalhos. - l hvmemsize especificar a quantidade de memória máxima necessária (por exemplo, 3G ou 3500M) (NOTA: Esta é a memória por slot de processador. Portanto, se você pedir 2 processadores memória total será 2 hvmemvalue) - l hrtlthh: mm: ssgt especificar o máximo Tempo de execução (horas, minutos e segundos) - l srthh: mm: ss especifica o limite de tempo de funcionamento suave (horas, minutos e segundos) - Lembre-se de configurar srt e hrt. - pe smp ltnslotsgt Especifica o ambiente paralelo. Smp executa um trabalho paralelo usando memória compartilhada e nprocessors quantidade de núcleos. - cwd executar no diretório de trabalho atual - wd ltdirgt Definir o diretório de trabalho para esta tarefa como ltdirgt - o ltoutputlogfilegt nome do arquivo de log de saída - e lterrorlogfilegt nome do arquivo de log de erro - m ea Enviará e-mail quando o trabalho terminar ou abortar - P ltprojectNamegt Definir o job39s projeto - M ltemailaddressgt Endereço de e-mail para enviar e-mail para - t ltstartgt-ltendgt: ltincrgt enviar uma matriz de trabalho com índice de início. Parar índice em incrementos usando Você pode ver a lista completa de argumentos e explicações aqui. Agora vamos ver alguns exemplos de scripts bash e comandos qsub que enviam esses jobs para o cluster. Submeter um trabalho bowtie Bowtie é um alinhador de leitura curta usado para alinhar leituras de máquinas de sequenciamento next-gen. O script inclui as opções de linha de comando dentro dele, então não há necessidade de passar essas opções na linha de comando. Em um script shell, você pode definir as opções qsub em linhas que começam com. Esta é uma alternativa para passá-los com o comando qsub. Como as opções que nos interessam estão no script, não precisamos passá-las com o comando qsub. As linhas que começam com são as opções qsub descritas acima. Eles personalizam o trabalho e pedem recursos como CPU e memória. Os arquivos de entrada / saída para o comando bowtie são armazenados em infile. Variáveis de outfile e btindex. Em seguida, passou para o comando bowtie. Isso não é realmente necessário, mas é mais fácil ler mais tarde sobre o que está acontecendo. A execução de bowtie começa com o gzip-dc. Desde fastq arquivos são comprimidos primeiro precisamos descompactá-los e alimentar a saída para bowtie via pipe. --chunkmbs 300 --best - m 1 - p 6 --phred33 - q são bowtie opções específicas. Olhe-os acima no manual de Bowtie. E, você pode executar isso da seguinte forma (assumindo que este arquivo é salvo como 39runBowtie. sh39). Mais exemplos para vir.
No comments:
Post a Comment