

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

# Alteração na disponibilidade do Profiler
<a name="profiler-availability-change"></a>

**nota**  
Aviso de fim do suporte: em 30 de junho de 2027, o suporte para o Amazon SageMaker Profiler AWS será encerrado. Depois de 30 de junho de 2027, você não poderá mais acessar o console ou os recursos do Profiler.

## Substituindo o Amazon SageMaker Profiler
<a name="profiler-replacing"></a>

Se você estiver usando o SageMaker Profiler, siga esta orientação para fazer a transição para serviços alternativos.

## Visão geral do
<a name="profiler-overview"></a>

O Amazon SageMaker Profiler forneceu visibilidade profunda da atividade da GPU e da CPU durante o treinamento, incluindo execuções de kernel, lançamentos de kernel, operações de sincronização, operações de memória e latências entre CPU-initiated lançamentos e execução de kernel de GPU. Este guia orienta você na remoção da configuração existente do Profiler e na adoção de profilers nativos da estrutura TensorBoard, além da Amazon para treinar diagnósticos de desempenho. CloudWatch 

Para TensorFlow cargas de trabalho PyTorch e cargas de trabalho, a combinação de criadores de perfil nativos da estrutura TensorBoard fornece visibilidade equivalente em nível de kernel com integração direta ao ecossistema de código aberto. A Amazon CloudWatch fornece monitoramento de recursos em nível de sistema com alarmes configuráveis. Juntas, essas ferramentas oferecem alternativas aos diagnósticos de desempenho de treinamento do SageMaker Profiler.

## Mapeamento de capacidades
<a name="profiler-capability-mapping"></a>


| Capacidade do Profiler | Substituído por | 
| --- | --- | 
| Rastreamentos do kernel da GPU, CPU/GPU utilização, análise de sincronização, latência do lançamento até a execução do kernel | PyTorch Perfilador/ TensorFlow Profiler \+ TensorBoard | 
| Perfil do carregador de dados e do pipeline de entrada | Profiladores de estrutura \+ TensorBoard | 
| Monitoramento de recursos do sistema (CPU, GPU, memória, disco) | Amazônia CloudWatch | 
| Anotações de operação personalizadas | Anotações do Framework Profiler | 
| Visualização da linha do tempo da interface do usuário do Profiler | TensorBoard Plugin Profiler | 

## Etapa 1: Remover a configuração do Profiler
<a name="profiler-step1-remove"></a>

### Remova as anotações smprof do seu script de treinamento
<a name="profiler-remove-smprof"></a>

Se seu script de treinamento usa os módulos SageMaker Profiler Python (`smprof`ou os mais antigos`smppy`), remova:
+ `import smprof` (ou `import smppy as smprof`)
+ `SMProfiler.instance()`, `SMProf.configure()`, `SMProf.start_profiling()`, `SMProf.stop_profiling()`
+ Todos os gerenciadores de `smprof.annotate()` contexto e `smprof.annotation_end()` chamadas`smprof.annotation_begin()`//

### Remover ProfilerConfig da sua configuração de treinamento
<a name="profiler-remove-config"></a>

Remova o `profiler_config` parâmetro da sua configuração SageMaker de treinamento:

```
# Remove this configuration
# V2
from sagemaker import ProfilerConfig, Profiler

profiler_config = ProfilerConfig(
    profile_params = Profiler(cpu_profiling_duration=3600)
)

# V3
from sagemaker.core.debugger.profiler_config import ProfilerConfig
from sagemaker.core.debugger.profiler import Profiler
```

### Exclua a saída do Profiler no Amazon S3
<a name="profiler-delete-s3-output"></a>

SageMaker O Profiler armazenou dados de perfil no `rule-output` caminho de seu trabalho de treinamento:

```
s3://<output-path>/<training-job-name>/rule-output/
```

Exclua esse prefixo se você não precisar mais dos dados históricos de criação de perfil. Seus registros de tarefas de treinamento e artefatos de modelo permanecem inalterados.

### Remova o pacote SageMaker Profiler Python (se instalado manualmente)
<a name="profiler-remove-package"></a>

Se você `requirements.txt` adicionou o `smprof` pacote a um contêiner Docker personalizado, remova todas as linhas que fazem referência`smppy.s3.amazonaws.com`.

### Excluir grupos de CloudWatch registros (opcional)
<a name="profiler-delete-cloudwatch-logs"></a>

Verifique os grupos de CloudWatch log criados pelo processamento de regras do Profiler em`/aws/sagemaker/ProcessingJobs`. Exclua-os se não forem mais necessários para reduzir os custos de armazenamento.

### Analise as políticas do IAM
<a name="profiler-review-iam"></a>

Remova as políticas do IAM que concederam permissões específicas para o uso do Profiler:
+ `s3:GetObject`/com `s3:PutObject` escopo para os caminhos de saída de regras do Profiler
+ Funções associadas a trabalhos de treinamento exclusivamente para suporte do Profiler

Mantenha todas as políticas ainda necessárias para seus trabalhos de treinamento ou CloudWatch monitoramento.

### Desativar a automação dependente
<a name="profiler-disable-automation"></a>

Atualize ou exclua qualquer automação que tenha consumido a saída do Profiler:
+ Fluxos de trabalho do Step Functions que processaram dados do Profiler
+  EventBridge Regras da Amazon acionadas pela saída do Profiler
+ Post-training processadores que lêem os caminhos do Profiler S3

## Etapa 2: configurar substituições
<a name="profiler-step2-configure"></a>

### Habilitar a criação de perfil em nível de estrutura
<a name="profiler-enable-framework"></a>

Atualize seu script de treinamento para usar o profiler embutido em sua estrutura. PyTorch Tanto os criadores de TensorFlow perfil quanto os criadores de perfil se integram diretamente à visualização, incluindo visualizações de cronograma, estatísticas do kernel e recomendações de desempenho. TensorBoard 

**PyTorch:**

```
import torch
from torch.profiler import profile, schedule, tensorboard_trace_handler

with profile(
    activities=[torch.profiler.ProfilerActivity.CPU, torch.profiler.ProfilerActivity.CUDA],
    schedule=schedule(wait=1, warmup=1, active=3, repeat=1),
    on_trace_ready=tensorboard_trace_handler("./tensorboard/logs"),
    record_shapes=True,
    profile_memory=True,
    with_stack=True
) as prof:
    for step, batch in enumerate(train_loader):
        inputs, labels = batch
        outputs = model(inputs)
        loss = criterion(outputs, labels)
        loss.backward()
        optimizer.step()
        prof.step()
```

Para anotar operações específicas (substituindo`smprof.annotate()`):

```
with torch.profiler.record_function("forward_pass"):
    outputs = model(inputs)

with torch.profiler.record_function("backward_pass"):
    loss.backward()
```

**TensorFlow:**

```
import tensorflow as tf

tf.profiler.experimental.start("./tensorboard/logs")
model.fit(train_dataset, epochs=5)
tf.profiler.experimental.stop()
```

**nota**  
Assim como no SageMaker Profiler, não é recomendável criar o perfil de um trabalho de treinamento inteiro. Crie o perfil de um subconjunto representativo de etapas (até algumas centenas) para minimizar a sobrecarga.

### Visualize com TensorBoard
<a name="profiler-visualize-tensorboard"></a>

Inicie TensorBoard para visualizar resultados de criação de perfil, cronogramas de execução e recomendações de desempenho:

```
tensorboard --logdir=./tensorboard/logs
```

O TensorBoard Profiler Plugin fornece cronogramas do kernel da GPU equivalentes à interface do usuário do SageMaker Profiler, junto com estatísticas do kernel, resumos de execução, análise do pipeline de entrada e recomendações de desempenho. Para gerenciado TensorBoard em SageMaker IA, consulte [ TensorBoard na Amazon SageMaker AI](https://docs.aws.amazon.com/sagemaker/latest/dg/tensorboard-on-sagemaker.html). O Gerenciado TensorBoard requer um SageMaker domínio e está disponível em regiões selecionadas.

### Use a Amazon CloudWatch para monitoramento e alertas do sistema
<a name="profiler-cloudwatch"></a>

A Amazon CloudWatch captura métricas de utilização de recursos para seus trabalhos de treinamento, incluindo CPU, GPU, memória e disco, em tempo real, com suporte a alarmes configuráveis para detectar gargalos de recursos, subutilização ou picos inesperados, e painéis que combinam métricas do sistema em todas as execuções de treinamento. Para obter etapas detalhadas, consulte [ Amazon CloudWatch Metrics for Monitoring and Analysing Training Jobs](https://docs.aws.amazon.com/sagemaker/latest/dg/training-metrics.html). Como alternativa, você pode registrar as métricas de desempenho do sistema do seu script de treinamento diretamente no MLflow para um rastreamento unificado junto com as métricas do seu experimento.

## O que acontece com seus dados existentes
<a name="profiler-existing-data"></a>
+ **Registros e artefatos de treinamento no S3 ** — A saída do seu trabalho de treinamento e os artefatos do modelo permanecem acessíveis. Eles são independentes do Profiler.
+ **Dados de rastreamento do Profiler ** — Os dados históricos de criação de perfil permanecem no S3 `rule-output/` até que você os exclua.
+ **CloudWatch métricas ** — As métricas históricas do sistema já incluídas CloudWatch são mantidas de acordo com as configurações [ de ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html#SettingLogRetention) retenção da sua conta.