Este documento descreve o fatiamento dinâmico no Google Kubernetes Engine (GKE). O fatiamento dinâmico permite configurar sub-blocos de TPU provisionados em diferentes topologias. Esse recurso reduz a necessidade de recriar pools de nós, melhora a tolerância a falhas, permitindo a recuperação automática quando ocorre uma falha, e otimiza a utilização de recursos.
O fatiamento dinâmico é destinado a engenheiros de IA/ML e administradores de plataforma que querem otimizar a utilização da TPU, reduzir o tempo de provisionamento e melhorar a tolerância a falhas para cargas de trabalho de treinamento e inferência em grande escala.
Antes de ler este documento, você precisa conhecer os seguintes conceitos:
- TPUs no GKE.
- Cluster Director da TPU. O fatiamento dinâmico é um recurso de TPU ativado pelo Cluster Director da TPU.
- Todas as reservas de modo de capacidade. Os recursos de fatiamento dinâmico estão disponíveis exclusivamente em TPUs que usam o modo de capacidade total.
O que é fatiamento dinâmico?
O fatiamento dinâmico oferece flexibilidade no gerenciamento da capacidade da Cloud TPU, permitindo que você desacople o provisionamento da TPU. O fatiamento dinâmico envolve o seguinte processo:
- Provisionar recursos como unidades menores: você provisiona recursos como unidades
chamadas sub-blocos. Um sub-bloco é a unidade de construção lógica fundamental da capacidade do Ironwood (TPU7x).
Para o Ironwood (TPU7x), um sub-bloco representa um grupo de 16 nós de VMs de TPU com uma topologia
4x4x4de chips de TPU interconectados. No contexto do modo de capacidade total da TPU e do fatiamento dinâmico, um pool de nós é mapeado diretamente para um sub-bloco. - Unir sub-blocos: o fatiamento dinâmico une esses sub-blocos em fatias maiores.
Benefícios do fatiamento dinâmico
O fatiamento dinâmico ajuda você a:
- Reduzir o tempo de provisionamento: o provisionamento individual de sub-blocos leva a um provisionamento geral mais rápido , porque minimiza o impacto de qualquer falha.
- Reduzir o tempo de recuperação: se ocorrer uma falha no chip da TPU, a menor unidade de falha será um sub-bloco. O fatiamento dinâmico isola sub-blocos com falha para que as cargas de trabalho possam ser reagendadas em sub-blocos íntegros mais rapidamente do que o provisionamento de uma fatia grande inteira.
- Remodelar a capacidade: se você tiver requisitos de carga de trabalho diversos, não será necessário excluir e recriar pools de nós para mudanças de topologia. Em vez disso, você pode reconfigurar dinamicamente os pools de nós provisionados para corresponder às formas especificadas.
Principais elementos do fatiamento dinâmico
O fatiamento dinâmico apresenta os seguintes conceitos principais:
- Provisionamento incremental de pools de nós: o fatiamento dinâmico usa o provisionamento incremental, que é um modelo de provisionamento tolerante a falhas de pools de nós. Esse modelo converte toda a capacidade da TPU em pools de nós de um grupo de 16 nós de VMs de TPU.
- Controlador de fatias: um controlador de recurso personalizado do Kubernetes em execução no plano de controle do GKE que gerencia o fatiamento dinâmico. O controlador de fatias gerencia o ciclo de vida de um recurso personalizado de fatia, que representa uma fatia dinâmica. O controlador de fatias processa a criação, o monitoramento contínuo e a exclusão da Slice. Quando você usa um programador, ele direciona a criação e a exclusão do recurso personalizado Slice.
- Recurso personalizado de fatia: une dinamicamente sub-blocos com base na topologia de TPU solicitada. Esse processo depende da reconfiguração dinâmica da rede OCS para conectar os pools de nós da TPU, o que ajuda a garantir o desempenho otimizado. Você pode inspecionar o progresso ou a integridade da formação de fatias dinâmicas inspecionando os campos de status do recurso personalizado de Slice.
Programadores para fatiamento dinâmico
Você pode configurar o Kueue e o agendamento com reconhecimento de topologia (TAS, na sigla em inglês) para criar automaticamente um recurso personalizado de Slice. Também é possível usar seu próprio programador para gerenciar recursos personalizados Slice.
A seguir
- Saiba como usar o fatiamento dinâmico com o Kueue e o TAS.
- Saiba mais sobre o Cluster Director da TPU.