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á.
A governança de SageMaker HyperPod tarefas da Amazon simplifica a forma como os recursos do cluster Amazon EKS são alocados e como as tarefas são priorizadas. A seguir, são apresentadas informações sobre as políticas de cluster do HyperPod EKS. Para obter informações sobre como configurar a governança de tarefas, consulteConfiguração de governança de tarefas.
As políticas são divididas em priorização de computação e alocação de computação. Os conceitos de política abaixo serão organizados no contexto dessas políticas.
A priorização da computação, ou política de cluster, determina como a computação ociosa é emprestada e como as tarefas são priorizadas pelas equipes.
-
A alocação de computação ociosa define como a computação ociosa é alocada entre as equipes. Ou seja, como a computação não utilizada pode ser emprestada das equipes. Ao escolher uma alocação de computação ociosa, você pode escolher entre:
-
Primeiro a chegar, primeiro a ser atendido: quando aplicadas, as equipes não são priorizadas umas contra as outras e cada tarefa recebida tem a mesma probabilidade de obter recursos acima da cota. As tarefas são priorizadas com base na ordem de envio. Isso significa que um usuário poderá usar 100% da computação ociosa se a solicitar primeiro.
-
Compartilhamento justo: quando aplicado, as equipes emprestam computação ociosa com base no peso atribuído ao compartilhamento justo. Esses pesos são definidos na alocação de computação. Para obter mais informações sobre como isso pode ser usado, consulteExemplos de compartilhamento de recursos computacionais ociosos.
-
-
A priorização de tarefas define como as tarefas são enfileiradas à medida que a computação se torna disponível. Ao escolher uma priorização de tarefas, você pode escolher entre:
-
Primeiro a chegar, primeiro a ser atendido: quando aplicadas, as tarefas são colocadas na fila na ordem em que são solicitadas.
-
Classificação de tarefas: quando aplicada, as tarefas são enfileiradas na ordem definida por sua priorização. Se essa opção for escolhida, você deverá adicionar classes prioritárias junto com os pesos nos quais elas devem ser priorizadas. Tarefas da mesma classe prioritária serão executadas por ordem de chegada. Quando ativada na alocação de computação, as tarefas são excluídas de tarefas de menor prioridade por tarefas de maior prioridade dentro da equipe.
Quando cientistas de dados enviam trabalhos para o cluster, eles usam o nome da classe prioritária no arquivo YAML. A classe prioritária está no formato
. Para obter um exemplo, consulte Envie um trabalho para uma fila e um SageMaker namespace gerenciados por IA.priority-class-name
-priority -
Classes prioritárias: essas classes estabelecem uma prioridade relativa para tarefas ao emprestar capacidade. Quando uma tarefa está sendo executada usando uma cota emprestada, ela pode ser substituída por outra tarefa de maior prioridade do que ela, se não houver mais capacidade disponível para a tarefa de entrada. Se a preempção estiver habilitada na alocação de computação, uma tarefa de maior prioridade também poderá antecipar tarefas dentro de sua própria equipe.
-
A alocação de computação, ou cota de computação, define a alocação de computação de uma equipe e qual peso (ou nível de prioridade) a uma equipe recebe pela alocação justa de computação ociosa.
-
Nome da equipe: O nome da equipe. Um namespace correspondente será criado, do tipo.
hyperpod-ns-
team-name
-
Membros: membros do namespace da equipe. Você precisará configurar um controle de acesso baseado em funções (RBAC) do Kubernetes para usuários de cientistas de dados que desejam fazer parte dessa equipe, para executar tarefas em clusters orquestrados com o Amazon EKS. HyperPod Para configurar um RBAC do Kubernetes, use as instruções em Criar função de equipe.
-
Peso do compartilhamento justo: esse é o nível de priorização atribuído à equipe quando o compartilhamento justo é aplicado para alocação de computação ociosa. A prioridade mais alta tem um peso de 100 e a prioridade mais baixa tem um peso de 0. Um peso maior permite que uma equipe acesse recursos não utilizados dentro da capacidade compartilhada mais cedo. Um peso zero significa a menor prioridade, o que implica que essa equipe sempre estará em desvantagem em comparação com outras equipes.
O peso justo da participação fornece uma vantagem comparativa para essa equipe ao competir pelos recursos disponíveis com outras. A admissão prioriza tarefas de agendamento de equipes com os maiores pesos e os menores empréstimos. Por exemplo, se a Equipe A tiver um peso de 10 e a Equipe B tiver um peso de 5, a Equipe A teria prioridade no acesso a recursos não utilizados, pois teria trabalhos agendados antes da Equipe B.
-
Preempção de tarefas: a computação é substituída por uma tarefa com base na prioridade. Por padrão, a equipe que empresta computação ociosa antecipará as tarefas de outras equipes.
-
Empréstimos e empréstimos: como a computação ociosa está sendo emprestada pela equipe e se a equipe pode emprestar de outras equipes.
-
Limite de empréstimo: o limite de computação ociosa que uma equipe pode emprestar. Uma equipe pode emprestar até 500% da computação alocada. O valor que você fornece aqui é interpretado como uma porcentagem. Por exemplo, um valor de 500 será interpretado como 500%.
-
Para obter informações sobre como esses conceitos são usados, como classes de prioridade e espaços de nomes, consulteExemplos de AWS CLI comandos de governança de HyperPod tarefas.
Exemplos de compartilhamento de recursos computacionais ociosos
A cota total reservada não deve ultrapassar a capacidade disponível do cluster para esse recurso, a fim de garantir o gerenciamento adequado da cota. Por exemplo, se um cluster compreende 20 ml.c5.2xlarge
instâncias, a cota cumulativa atribuída às equipes deve permanecer abaixo de 20.
Se as políticas de alocação de computação para equipes permitirem emprestar e emprestar ou emprestar, a capacidade ociosa será compartilhada entre essas equipes. Por exemplo, a equipe A e a equipe B têm o Lend and Borrow ativado. A equipe A tem uma cota de 6, mas está usando apenas 2 para seus trabalhos, e a equipe B tem uma cota de 5 e está usando 4 para seus trabalhos. Um trabalho enviado à Equipe B exigindo 4 recursos. 3 serão emprestados da Equipe A.
Se a política de alocação de computação de qualquer equipe estiver definida como Não emprestar, a equipe não poderá emprestar nenhuma capacidade adicional além de suas próprias alocações.
Para manter um pool ou um conjunto de recursos dos quais todas as equipes possam emprestar, você pode configurar uma equipe dedicada com recursos que preencham a lacuna entre as alocações de outras equipes e a capacidade total do cluster. Certifique-se de que essa alocação cumulativa de recursos inclua os tipos de instância apropriados e não exceda a capacidade total do cluster. Para garantir que esses recursos possam ser compartilhados entre as equipes, permita que as equipes participantes tenham suas alocações de computação definidas como Lend and Borrow ou Lend para esse pool comum de recursos. Sempre que novas equipes forem introduzidas, as alocações de cotas forem alteradas ou houver alguma alteração na capacidade do cluster, revise as alocações de cotas de todas as equipes e garanta que a cota cumulativa permaneça igual ou abaixo da capacidade do cluster.