Alocação de cota computacional na governança de tarefas da Amazon SageMaker HyperPod - SageMaker Inteligência Artificial da Amazon

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á.

Alocação de cota computacional na governança de tarefas da Amazon SageMaker HyperPod

Os administradores de cluster podem decidir como a organização usa a computação adquirida. Isso reduz o desperdício e os recursos ociosos. Você pode alocar uma cota de computação para que as equipes possam emprestar recursos não utilizados umas das outras. A alocação de cotas de computação na governança de HyperPod tarefas permite que os administradores aloquem recursos no nível da instância e em um nível de recurso mais granular. Esse recurso fornece gerenciamento de recursos flexível e eficiente para equipes, permitindo controle granular sobre recursos computacionais individuais em vez de exigir alocações de instâncias inteiras. A alocação em um nível granular elimina as ineficiências da alocação tradicional em nível de instância. Por meio dessa abordagem, você pode otimizar a utilização de recursos e reduzir a computação ociosa.

A alocação de cotas de computação oferece suporte a três tipos de alocação de recursos: aceleradores, vCPU e memória. Os aceleradores são componentes em instâncias aceleradas de computador que executam funções, como cálculos de números de ponto flutuante, processamento gráfico ou correspondência de padrões de dados. Os aceleradores incluem GPUs aceleradores Trainium e núcleos de neurônios. Para o compartilhamento de GPU com várias equipes, equipes diferentes podem receber alocações específicas de GPU do mesmo tipo de instância, maximizando a utilização do hardware do acelerador. Para cargas de trabalho com uso intenso de memória que exigem RAM adicional para cenários de pré-processamento de dados ou armazenamento em cache de modelos, você pode alocar a cota de memória além da taxa padrão. GPU-to-memory Para tarefas de pré-processamento pesadas de CPU que precisam de recursos substanciais de CPU junto com o treinamento da GPU, você pode alocar alocação independente de recursos de CPU.

Depois de fornecer um valor, a governança de HyperPod tarefas calcula a proporção usando a fórmula de recurso alocado dividido pela quantidade total de recursos disponíveis na instância. HyperPod A governança de tarefas então usa essa proporção para aplicar alocações padrão a outros recursos, mas você pode substituir esses padrões e personalizá-los com base no seu caso de uso. Veja a seguir exemplos de cenários de como a governança de HyperPod tarefas aloca recursos com base em seus valores:

  • Somente acelerador especificado - a governança de HyperPod tarefas aplica a proporção padrão à vCPU e à memória com base nos valores do acelerador.

  • Somente vCPU especificada - a governança de HyperPod tarefas calcula a proporção e a aplica à memória. Os aceleradores estão definidos como 0.

  • Somente memória especificada - a governança de HyperPod tarefas calcula a proporção e a aplica à vCPU porque a computação é necessária para executar cargas de trabalho especificadas na memória. Os aceleradores estão definidos como 0.

Para controlar programaticamente a alocação de cotas, você pode usar o ComputeQuotaResourceConfigobjeto e especificar suas alocações em números inteiros.

{ "ComputeQuotaConfig": { "ComputeQuotaResources": [{ "InstanceType": "ml.g5.24xlarge", "Accelerators": "16", "vCpu": "200.0", "MemoryInGiB": "2.0" }] } }

Para ver todas as alocações alocadas, incluindo os padrões, use a operação. DescribeComputeQuota Para atualizar suas alocações, use a UpdateComputeQuotaoperação.

Você também pode usar a HyperPod CLI para alocar cotas de computação. Para obter mais informações sobre a HyperPod CLI, consulte. Execução de trabalhos em SageMaker HyperPod clusters orquestrados pelo Amazon EKS O exemplo a seguir demonstra como definir cotas de computação usando a CLI. HyperPod

hyp create hyp-pytorch-job --version 1.1 --job-name sample-job \ --image 123456789012.dkr.ecr.us-west-2.amazonaws.com/ptjob:latest \ --pull-policy "Always" \ --tasks-per-node 1 \ --max-retry 1 \ --priority high-priority \ --namespace hyperpod-ns-team-name \ --queue-name hyperpod-ns-team-name-localqueue \ --instance-type sample-instance-type \ --accelerators 1 \ --vcpu 3 \ --memory 1 \ --accelerators-limit 1 \ --vcpu-limit 4 \ --memory-limit 2

Para alocar cotas usando o AWS console, siga estas etapas.

  1. Abra o console do Amazon SageMaker AI em https://console.aws.amazon.com/sagemaker/.

  2. Em HyperPod clusters, escolha Gerenciamento de clusters.

  3. Em Alocações de computação, escolha Criar.

  4. Se você ainda não tiver instâncias, escolha Adicionar alocação para adicionar uma instância.

  5. Em Alocações, escolha alocar por instâncias ou recursos individuais. Se você alocar por recursos individuais, a SageMaker IA atribuirá automaticamente alocações a outros recursos de acordo com a proporção que você escolheu. Para substituir essa alocação baseada em proporção, use a alternância correspondente para substituir essa computação.

  6. Repita as etapas 4 e 5 para configurar instâncias adicionais.

Depois de alocar a cota de computação, você pode enviar trabalhos por meio da CLI ou. HyperPod kubectl HyperPodprograma com eficiência as cargas de trabalho com base na cota disponível.