View a markdown version of this page

Definindo configurações personalizadas do GRES em AWS PEÇAS - AWS PEÇAS

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Definindo configurações personalizadas do GRES em AWS PEÇAS

O Slurm é usado gres.conf para gerenciar recursos genéricos (GRES), como GPUs, Multi-Process serviços (MPS) e dispositivos de Multi-Instance GPU (MIG), em nós de computação. AWS O PCS permite que você personalize gres.conf por meio da gresCustomSettings propriedade de slurmConfiguration durante a criação ou atualização do grupo de nós de computação.

Ao contrário de outras configurações personalizadas, que são uma lista simples de pares de parâmetros e valores, gresCustomSettings há uma lista de registros. Cada registro é um conjunto de gres.conf atributos que descreve um dispositivo ou recurso GRES. Por exemplo, o registro Name=gpu Type=a100 File=/dev/nvidia[0-7] declara oito GPUs A100.

No Slurm, um gres.conf registro se aplica a cada nó do cluster, a menos que especifique um prefixo. NodeName= AWS O PCS sempre adiciona o NodeName= prefixo para o grupo de nós de computação, então você não o especifica, e cada registro fornecido se aplica somente a esse grupo de nós de computação. AWS O PCS não oferece suporte a registros em todo o clustergres.conf.

Definindo as configurações do gres.conf

gres.confas configurações personalizadas podem ser definidas por meio do AWS console, da CLI ou dos SDKs durante a criação do grupo de nós de computação ou modificadas posteriormente por meio de operações de atualização.

Console de gerenciamento da AWS

Navegue até Configurações adicionais do agendador na página de criação ou edição de um recurso de grupo de nós de computação. Insira um gres.conf registro por linha, no gres.conf formato nativo (por exemplo,Name=gpu Type=a100 File=/dev/nvidia[0-7]).

AWS CLI

Para o gerenciamento programático das gres.conf configurações, use o gresCustomSettings campo em operações de criação ou atualização de grupos de nós de computação. Cada elemento da lista é um gres.conf registro.

exemplo— Declaração de dispositivos de GPU em um grupo de nós de computação
aws pcs update-compute-node-group \ --cluster-identifier my-cluster \ --compute-node-group-identifier my-cng-1 \ --slurm-configuration \ 'gresCustomSettings=[{Name=gpu,Type=a100,File=/dev/nvidia[0-7]}]'

Configurações de gres.conf suportadas para grupos de nós de computação

Os gres.conf atributos a seguir são suportados em cada registro no nível do grupo de nós de computação:

Para saber o significado e os valores aceitos de cada atributo, consulte a documentação do Slurm https://slurm.schedmd.com/gres.conf.html gres.conf. AWS O PCS valida seus registros de acordo com as mesmas regras que o Slurm aplica. Em particular, cada registro deve declarar um valor ativo Name ou um AutoDetect valor ativo, e um registro de GPU (Name=gpu) deve especificar File ou MultipleFiles a menos que um AutoDetect valor ativo descubra os dispositivos.

Um AutoDetect valor ativo é qualquer valor que ativa a detecção, como nvml oufull. AutoDetect=offdesativa a detecção, portanto, não é um valor ativo e não pode ser isolado em um registro.

Como AWS O PCS aplica seus registros gres.conf

Uma configuração GRES aparece em dois lugares na configuração do Slurm, e o AWS PCS grava os dois:

  • Os gres.conf registros que você fornece gresCustomSettings descrevem os dispositivos que existem no nó.

  • A Gres configuração em slurm.conf declara o que o agendador pode alocar, no formulário. name[:type]:count Você a fornece como uma configuração personalizada do Slurm para o grupo de nós de computação, em. slurmCustomSettings Para obter mais informações, consulte Configurações personalizadas do Slurm para AWS Grupos de nós de computação PCS.

AWS O PCS renderiza seus registros gres.conf e os reconcilia com a configuração GRES que ele gerencia:

  • Qualquer registro de GPU que você declarar substitui o registro de GPU padrão que o AWS PCS gera para o grupo de nós de computação. Um registro de GPU é um registro que especifica Name=gpu ou é um AutoDetect atributo.

  • Registros de outros recursos, comomps,shard, ou um nome de recurso próprio, são adicionados junto com os padrões do AWS PCS.

  • AWS O PCS deriva a GresTypes configuração e as gres/* entradas da AccountingStorageTRES configuração a slurm.conf partir da Gres configuração.

No Slurm versão 26.05 e posterior, o AWS PCS é definido AutoDetect=full por padrão nos grupos de nós de computação da GPU quando o layout do soquete do nó é conhecido, seja porque você configurou Sockets o grupo de nós de computação ou porque AWS o PCS detectou a topologia da CPU automaticamente. slurmCustomSettings Quando o layout do soquete não está disponível, o AWS PCS emite seu registro de GPU sem ele. AutoDetect

Restrições entre gres.conf e a configuração Gres

O Slurm precisa dos dois lados da configuração do GRES para agendar um recurso, e um recurso que aparece em apenas um deles não funciona. Uma entrada na Gres configuração sem nenhum gres.conf registro por trás dela faz slurm.conf com que o nó reporte menos recursos do que os configurados e o nó seja drenado. Um registro sem Gres entrada deixa o dispositivo presente no nó, mas não é programável.

AWS O PCS valida os dois um contra o outro quando você cria ou atualiza um grupo de nós de computação e rejeita a solicitação nos seguintes casos:

  • Uma slurm.conf Gres entrada nomeia um recurso que nenhum gres.conf registro declara. Isso incluigpu: uma gpu entrada exige um registro de GPUgresCustomSettings, mesmo quando a contagem é0.

  • Uma slurm.conf Gres entrada declara uma contagem maior de um recurso do que os gres.conf registros declaram. Uma contagem menor é permitida, até0: os gres.conf registros descrevem os dispositivos que estão presentes no nó, enquanto Gres declaram quantos deles o agendador pode alocar.

  • Uma slurm.conf Gres entrada especifica um tipo de GPU que nenhum registro de GPU declara. gres.conf

As duas últimas verificações dependem do que seus registros declaram. AWS O PCS não pode contar os dispositivos que o Slurm descobre quando o nó é inicializado, portanto, um registro ativado só AutoDetect aceita qualquer gpu contagem e tipo na entrada. Gres É assim que os perfis MIG passam pela validação. AWS O PCS também ignora a verificação de contagem de GRES (mpseshard) compartilhado e ignora a verificação de tipo quando um registro de GPU declara não. Type

AWS O PCS aceita um registro que não tem nenhuma Gres entrada correspondente. O recurso existe no nó, mas os trabalhos não podem solicitá-lo. Adicione a Gres entrada para torná-la programável.

Importante

AWS O PCS valida a sintaxe de seus registros e sua consistência com a Gres configuração. Isso não os valida em relação ao hardware. Um registro cujoFile,Cores, ou Links layout não corresponde aos dispositivos no nó inicializado faz com que o nó seja drenado. O mesmo se aplica ao MIG: os perfis que você declara Gres devem corresponder aos perfis configurados no nó. Para obter mais informações sobre o diagnóstico de um nódulo drenado, consulte. Solucionar problemas de registros de nós inválidos (INVALID_REG) em AWS PEÇAS