fila de trabalho assíncrona no mecanismo de grade solar (SGE) - possível?

3

Estamos procurando implantar um sistema de filas e a SGE está parecendo que atenderá a quase todos os nossos desejos. No entanto, tivemos a ideia de suportar um modelo de filas síncrono e assíncrono. Em outras palavras:

  1. Teríamos todos os nós do trabalhador vinculados a uma fila síncrona, para que os trabalhos atribuídos a eles entrassem na fila normalmente - ou seja, um trabalho é executado, quando termina outro é aceito e executado.

  2. Queríamos também atribuir tarefas "assíncronas" aos nós. Estas seriam tarefas que poderiam ser feitas em paralelo com outros trabalhos, geralmente tarefas de manutenção nas próprias máquinas.

Vejo na documentação do SGE que é possível definir várias filas nos nós, mas isso não é o mesmo que ter uma fila que aceita qualquer trabalho e a lança em segundo plano, depois aceita outra . Não estou totalmente familiarizado com todas as opções de configuração no SGE, mas parece que isso pode ser possível. Alguém pode me indicar algumas informações sobre como isso pode ser configurado?

    
por Rick Reynolds 10.10.2011 / 16:56

1 resposta

4

Você pode definir o número de slots por fila. Portanto, para sua fila de trabalhos "síncronos", você pode definir o número de slots por host como 1. Dessa forma, apenas um único trabalho será aceito na fila de um host por vez e, quando terminar, outro poderá ser executado. Para a fila "assíncrona", basta definir o número de slots para um número alto para que qualquer número de tarefas necessárias seja executado de uma vez no host.

Agora que você tem duas filas, é necessário direcionar tarefas para elas. Uma maneira simples de fazer isso seria simplesmente usar a opção -q para qsub para selecionar explicitamente uma fila, por exemplo: qsub -q 'sync.q@*' .

No entanto, é preferível permitir que o gridengine decida em qual fila colocar um trabalho. Para isso, você pode definir um complexo, digamos, sync e definir o atributo forced como true. Então você atribui esse complexo à fila. Agora, as tarefas enviadas com qsub -l sync só serão colocadas em uma fila com esse atributo disponível. O benefício disso é alguma flexibilidade adicional se você decidir reorganizar suas filas, bem como um procedimento de envio um pouco mais simples.

    
por 10.10.2011 / 20:50

Tags