Por que há conceito de slots no SGE?

2

De acordo com o Manual SGE 5.3,

Slots - The number of jobs which may be executed concurrently in that queue

Eu sou novo nesses conceitos e quero começar a entender um por um.

Para supor, se a RAM for 10G e se houver 10 slots e, portanto, 1G por slot, será possível executar apenas trabalhos menores que 1G? E se o trabalho precisar de apenas 0.5G, será desperdiçado o 0.5G restante nesse slot, certo? E se sim, qual é o uso da grade então se não houver otimização dos recursos?

E se um trabalho de 2G é compartilhado entre vários slots, isso é chamado de trabalho paralelo ou trabalho normal?

E existe alguma diferença entre o conceito de fila e de slot em SGE v5.3 e v6.0 & acima?

    
por GP92 02.06.2015 / 20:46

1 resposta

2

Um núcleo da CPU (exceto hyperthreading ou similar) só pode executar um processo de cada vez. Em um servidor da Web comum ou de desktop, ele alterna entre processos muito rapidamente para criar a ilusão de que vários processos estão sendo executados simultaneamente. No entanto, isso diminui o desempenho geral da CPU, já que a comutação tem custos (troca, invalidação de cache, comutadores de contexto). Isso não importa quando o núcleo passa a maior parte do tempo esperando por E / S (como entrada de usuário / conexões de rede), mas em HPC / HTC (o principal caso de uso para o mecanismo de grade) cada programa é escrito para fazer uso eficiente de recursos para que você faça o trabalho mais rapidamente se você tiver um sistema em lotes que organize os programas para serem executados um após o outro, em vez de alternar entre eles.

Em tais circunstâncias, o mecanismo de grade é normalmente configurado para usar slots para representar os núcleos, a fim de evitar comprometimento excessivo.

O mecanismo de grade pode ser configurado para rastrear a memória separadamente dos núcleos / slots.

    
por 26.02.2016 / 17:14

Tags