

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

# Configurações específicas de cluster
<a name="cluster-specific-configurations"></a>

SageMaker HyperPod oferece flexibilidade na execução de trabalhos de treinamento em diferentes ambientes de cluster. Cada ambiente tem seus próprios requisitos e processo de configuração. Esta seção descreve as etapas e configurações necessárias para executar trabalhos de treinamento no SageMaker HyperPod Slurm, SageMaker HyperPod k8s e trabalhos de treinamento. SageMaker Compreender essas configurações é crucial para aproveitar com eficácia o poder do treinamento distribuído no ambiente escolhido.

Você pode usar uma fórmula nos seguintes ambientes de cluster:
+ SageMaker HyperPod Orquestração do Slurm
+ SageMaker HyperPod Orquestração do Amazon Elastic Kubernetes Service
+ SageMaker empregos de treinamento

Para iniciar uma tarefa de treinamento em um cluster, defina e instale a configuração e o ambiente de cluster correspondentes.

**Topics**
+ [Executando um trabalho de treinamento no HyperPod Slurm](cluster-specific-configurations-run-training-job-hyperpod-slurm.md)
+ [Executando um trabalho de treinamento no HyperPod k8s](cluster-specific-configurations-run-training-job-hyperpod-k8s.md)
+ [Executando um trabalho SageMaker de treinamento](cluster-specific-configurations-run-sagemaker-training-job.md)

# Executando um trabalho de treinamento no HyperPod Slurm
<a name="cluster-specific-configurations-run-training-job-hyperpod-slurm"></a>

SageMaker HyperPod O Recipes oferece suporte ao envio de um trabalho de treinamento para um cluster de GPU/Trainium slurm. Antes de enviar a tarefa de treinamento, atualize a configuração do cluster. Use um dos seguintes métodos para atualizar a configuração do cluster:
+ Modifique o `slurm.yaml`.
+ Substitua o arquivo por meio da linha de comandos.

Depois de atualizar a configuração do cluster, instale o ambiente.

## Configurar o cluster
<a name="cluster-specific-configurations-configure-cluster-slurm-yaml"></a>

Para enviar uma tarefa de treinamento para um cluster do Slurm, especifique a configuração específica do Slurm. Modifique o `slurm.yaml` para configurar o cluster do Slurm. Veja a seguir um exemplo de configuração de cluster do Slurm. Você pode modificar esse arquivo de acordo com suas próprias necessidades de treinamento:

```
job_name_prefix: 'sagemaker-'
slurm_create_submission_file_only: False 
stderr_to_stdout: True
srun_args:
  # - "--no-container-mount-home"
slurm_docker_cfg:
  docker_args:
    # - "--runtime=nvidia" 
  post_launch_commands: 
container_mounts: 
  - "/fsx:/fsx"
```

1. `job_name_prefix`: especifique um prefixo de nome de tarefa para identificar facilmente seus envios ao cluster do Slurm.

1. `slurm_create_submission_file_only`: defina essa configuração como True para realizar uma simulação e ajudar você a depurar.

1. `stderr_to_stdout`: especifique se você está redirecionando seu erro padrão (stderr) para a saída padrão (stdout).

1. `srun_args`: personalize configurações srun adicionais, como excluir nós de computação específicos. Para ter mais informações, consulte a documentação do srun.

1. `slurm_docker_cfg`: o lançador de SageMaker HyperPod receitas lança um contêiner Docker para executar seu trabalho de treinamento. Você pode especificar argumentos adicionais do Docker dentro desse parâmetro.

1. `container_mounts`: especifique os volumes que você está montando no contêiner para o inicializador de fórmulas. Desse modo, suas tarefas de treinamento poderão acessar os arquivos nesses volumes.

# Executando um trabalho de treinamento no HyperPod k8s
<a name="cluster-specific-configurations-run-training-job-hyperpod-k8s"></a>

SageMaker HyperPod O Recipes oferece suporte ao envio de um trabalho de treinamento para um cluster GPU/Trainium Kubernetes. Antes de enviar a tarefa de treinamento, execute uma destas ações:
+ Modifique o arquivo de configuração `k8s.yaml` do cluster.
+ Substitua a configuração do cluster por meio da linha de comandos.

Depois de executar qualquer uma das etapas anteriores, instale o ambiente correspondente.

## Configurar o cluster usando `k8s.yaml`
<a name="cluster-specific-configurations-configure-cluster-k8s-yaml"></a>

Para enviar uma tarefa de treinamento a um cluster do Kubernetes, especifique as configurações específicas do Kubernetes. As configurações incluem o namespace do cluster ou o local do volume persistente.

```
pullPolicy: Always
restartPolicy: Never
namespace: default
persistent_volume_claims:
  - null
```

1. `pullPolicy`: você pode especificar a política de extração ao enviar uma tarefa de treinamento. Se você especificar “Sempre”, o cluster do Kubernetes sempre extrairá sua imagem do repositório. Para ter mais informações, consulte [Image pull policy](https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy).

1. `restartPolicy`: especifique se deseja reiniciar a tarefa de treinamento se ela falhar.

1. `namespace`: você pode especificar o namespace do Kubernetes para o qual você está enviando a tarefa de treinamento.

1. `persistent_volume_claims`: você pode especificar um volume compartilhado para a tarefa de treinamento para que todos os processos de treinamento acessem os arquivos no volume.

# Executando um trabalho SageMaker de treinamento
<a name="cluster-specific-configurations-run-sagemaker-training-job"></a>

SageMaker HyperPod O Recipes oferece suporte ao envio de um trabalho SageMaker de treinamento. Antes de enviar a tarefa de treinamento, você deve atualizar a configuração do cluster (`sm_job.yaml`) e instalar o ambiente correspondente.

## Use sua receita como um trabalho SageMaker de treinamento
<a name="cluster-specific-configurations-cluster-config-sm-job-yaml"></a>

Você pode usar sua receita como um trabalho de SageMaker treinamento se não estiver hospedando um cluster. Você deve modificar o arquivo de configuração do trabalho de SageMaker treinamento`sm_job.yaml`,, para executar sua receita.

```
sm_jobs_config:
  output_path: null 
  tensorboard_config:
    output_path: null 
    container_logs_path: null
  wait: True 
  inputs: 
    s3: 
      train: null
      val: null
    file_system:  
      directory_path: null
  additional_estimator_kwargs: 
    max_run: 1800
```

1. `output_path`: é possível especificar onde você está salvando seu modelo em um URL do Amazon S3.

1. `tensorboard_config`: você pode especificar uma configuração TensorBoard relacionada, como o caminho de saída ou o caminho TensorBoard dos registros.

1. `wait`: você pode especificar se está aguardando a conclusão da tarefa ao enviar sua tarefa de treinamento.

1. `inputs`: é possível especificar os caminhos para seus dados de treinamento e validação. A fonte de dados pode ser de um sistema de arquivos compartilhado, como o Amazon, FSx ou de um URL do Amazon S3.

1. `additional_estimator_kwargs`: Argumentos adicionais do estimador para enviar um trabalho de treinamento para a plataforma de empregos de SageMaker treinamento. Para ter mais informações, consulte [Algorithm Estimator](https://sagemaker.readthedocs.io/en/stable/api/training/algorithm.html).