Ponto de verificação de nível gerenciado do HyperPod - Amazon SageMaker AI

Ponto de verificação de nível gerenciado do HyperPod

Esta seção explica como funciona o ponto de verificação de nível gerenciado e os benefícios que ele oferece para o treinamento de modelo em grande escala.

O ponto de verificação de nível gerenciado do Amazon SageMaker HyperPod ajuda você a treinar modelos de IA generativa em grande escala com maior eficiência. Ele usa vários níveis de armazenamento, inclusive a memória da CPU do cluster. Essa abordagem reduz o tempo de recuperação e minimiza a perda no andamento do treinamento. Ela também usa recursos de memória subutilizados na infraestrutura de treinamento.

O ponto de verificação de nível gerenciado permite salvar pontos de verificação com maior frequência na memória. Ele os mantém periodicamente em um armazenamento durável. Isso preserva o desempenho e a confiabilidade durante o processo de treinamento.

Este guia mostra como instalar, configurar e usar pontos de verificação de nível gerenciado com frameworks PyTorch em clusters do Amazon EKS no HyperPod.

Como funciona o ponto de verificação de nível gerenciado

O ponto de verificação de nível gerenciado usa uma abordagem de armazenamento de vários níveis. A memória da CPU serve como uma camada principal para armazenar pontos de verificação do modelo. Os níveis secundários incluem opções de armazenamento persistente, como o Amazon S3.

Quando você salva um ponto de verificação, o sistema o armazena no espaço de memória alocado nos nós do cluster. Ele replica automaticamente os dados em nós de computação adjacentes para aumentar a confiabilidade. Essa estratégia de replicação oferece proteção contra falhas de um ou vários nós, ao mesmo tempo em que fornece acesso rápido às operações de recuperação.

O sistema também salva periodicamente os pontos de verificação no armazenamento persistente de acordo com sua configuração. Isso garante a durabilidade a longo prazo do andamento do treinamento.

Os principais componentes incluem:

  • Sistema de gerenciamento de memória: um daemon de gerenciamento de memória que fornece memória desagregada como um serviço para armazenamento de pontos de verificação.

  • Biblioteca Python do HyperPod: faz interface com as APIs de armazenamento desagregado e fornece utilitários para salvar, carregar e gerenciar pontos de verificação em vários níveis.

  • Replicação de pontos de verificação: replica automaticamente os pontos de verificação em vários nós para tolerância a falhas

O sistema se integra perfeitamente aos ciclos de treinamento do PyTorch por meio de chamadas de API simples. Alterações mínimas são necessárias no código existente.

Benefícios

O ponto de verificação de nível gerenciado oferece várias vantagens para o treinamento de modelo em grande escala:

  • Usabilidade aprimorada: as operações de salvamento, replicação, persistência e recuperação do ponto de verificação são gerenciadas.

  • Operações de ponto de verificação mais rápidas: o armazenamento baseado em memória oferece tempos de salvamento e carregamento mais rápidos em comparação com o ponto de verificação baseado em disco, o que agiliza a recuperação.

  • Tolerância a falhas: a replicação automática de pontos de verificação entre nós oferece proteção contra falhas nos nós de hardware.

  • Alterações mínimas no código: devido à facilidade de integração da API, apenas pequenas modificações são necessárias nos scripts de treinamento existentes.

  • Melhor throughput de treinamento: a redução da sobrecarga do ponto de verificação significa mais tempo dedicado ao treinamento em si.