Visão geral do agendamento elástico de recursos, agendamento de tarefas de IA, agendamento de recursos heterogêneos e agendamento de filas de tarefas para melhorar a utilização dos recursos do cluster e a eficiência dos jobs.
Agendamento elástico
Combine instâncias ECS, ECI e preemptíveis em uma única aplicação. Use políticas baseadas em prioridade para controlar qual tipo de recurso escala horizontalmente primeiro e qual é liberado antes.
|
Recurso |
Cenário |
Referências |
|
Agendamento elástico |
Reduza custos ao priorizar recursos mais baratos durante o scale-out (por exemplo, ECS antes de ECI) e liberá-los primeiro durante o scale-in. Compatível com instâncias por assinatura, pagamento conforme o uso e preemptíveis. |
Use Elastic Container Instance-based scheduling e Configure priority-based resource scheduling |
Agendamento de tarefas
Gang scheduling, Capacity Scheduling e Kube Queue gerenciam cargas de trabalho em lote e de IA.
|
Recurso |
Cenário |
Referências |
|
Gang scheduling |
Treinamento distribuído ou jobs em lote que exigem início simultâneo das tarefas. Sem gang scheduling, inícios parciais bloqueiam recursos e causam deadlock. O gang scheduling inicia todos os processos correlacionados juntos para evitar bloqueios. |
|
|
Capacity Scheduling |
Clusters com várias equipes que utilizam recursos em horários diferentes. As cotas de recursos padrão do Kubernetes alocam quantidades fixas por namespace e deixam recursos ociosos quando as cotas não são totalmente utilizadas. O Capacity Scheduling permite que as equipes compartilhem recursos ociosos além dos limites das cotas. |
|
|
Kube Queue (ack-kube-queue) |
Grandes clusters com cargas de trabalho de IA e em lote de vários usuários. O agendamento no nível de pod perde desempenho com alto volume de jobs, e tarefas de diferentes usuários podem interferir entre si. O ack-kube-queue gerencia filas com políticas personalizáveis e cotas integradas para maximizar a utilização. |
Agendamento de recursos heterogêneos
Agende GPUs com compartilhamento cGPU e posicionamento consciente de topologia tanto para CPUs quanto para GPUs. Para rótulos de nó de agendamento de GPU, consulte Labels used by ACK to control GPUs.
Compartilhamento de GPU com cGPU
O cGPU permite que vários pods compartilhem uma GPU com isolamento de memória, o que reduz custos de GPU e melhora a estabilidade da carga de trabalho. Clusters ACK Pro suportam as seguintes políticas:
|
Política |
Indicado para |
Descrição |
|
Compartilhamento um-pod-uma-GPU com isolamento de memória |
Inferência de modelos |
Um pod por GPU com isolamento de memória entre pods que compartilham a mesma GPU. |
|
Compartilhamento um-pod-várias-GPUs com isolamento de memória |
Treinamento distribuído de modelos |
Um pod abrange várias GPUs com isolamento de memória para treinamento distribuído de modelos. |
|
Alocação binpack ou spread |
Melhoria na utilização de GPU e alta disponibilidade |
Aloca GPUs com algoritmos binpack ou spread para aumentar a utilização e garantir alta disponibilidade. |
Consulte cGPU Professional Edition para instruções de configuração.
Agendamento de CPU e GPU consciente de topologia
O agendador posiciona cargas de trabalho sensíveis a desempenho com base na topologia de hardware do nó: caminhos GPU-para-GPU (NVLink, PCIe Switches) e topologia NUMA da CPU.
|
Recurso |
Referências |
|
Agendamento de CPU consciente de topologia |
|
|
Agendamento de GPU consciente de topologia |
Agendamento de FPGA
Use rótulos para agendar cargas de trabalho de FPGA em nós acelerados e gerencie recursos de FPGA em todo o cluster.
|
Recurso |
Referências |
|
Agendamento de FPGA |
Agendamento de fila de tarefas
Personalize o agendamento de filas de tarefas para cargas de trabalho de IA e em lote.