Como posso definir o número máximo de trabalhos em execução por usuário no SGE?

9

Estamos usando o SGE (Sun Grid Manager). Temos algumas limitações sobre o número total de trabalhos simultâneos de todos os usuários.

Gostaria de saber se é possível definir um limite voluntário e temporário para o número de trabalhos em execução simultâneos para um usuário específico.

Por exemplo, o usuário dave está prestes a enviar 500 trabalhos, mas ele não deseja mais do que 100 para executar simultaneamente, por exemplo já que ele sabe que os trabalhos fazem muita E / S que ficou preso no arquivo (história verdadeira, infelizmente).

Isso é possível?

    
por David B 24.09.2010 / 02:25

1 resposta

9

Você pode definir um complexo com qconf -mc . Chame de algo como high_io ou o que você quiser e defina o campo consumível como YES . Em seguida, na configuração global com qconf -me global ou em uma fila específica com qconf -mq <queue name> set high_io=500 nos valores complexos. Agora diga aos seus usuários para especificar -l high_io=1 ou quantos "tokens" você quiser que eles usem. Isso limitará o número de trabalhos simultâneos ao valor definido para o valor complexo.

A outra maneira de fazer isso é com cotas. Adicione uma cota com qconf -arqs semelhante a:

 {
        name         dave_max_slots
        description  "Limit dave to 500 slots"
        enabled      true
        limit        users {dave} to slots=500
 }
    
por 24.09.2010 / 08:06

Tags