Todos os produtos
Search
Central de documentação

Platform For AI:Visão geral do monitoramento de service

Última atualização: Sep 08, 2026

Após a implantação de um service EAS, visualize métricas como QPS, latência, taxa de erros e uso de recursos na aba Monitor da página de detalhes do service para compreender as invocações e o status de execução.

Visualizar dados de monitoramento

Acessar a página de monitoramento

  1. Faça login no PAI console. Selecione uma região na parte superior da página. Em seguida, selecione o workspace desejado e clique em Enter Elastic Algorithm Service (EAS).

  2. Clique no nome do service alvo para acessar a página de detalhes do service e alterne para a aba Monitor.

Selecionar dimensões e painéis

A página de monitoramento oferece uma seleção em dois níveis no canto superior esquerdo: primeiro, selecione uma dimensão de monitoramento (Service ou Instance) na lista suspensa; depois, escolha um painel.

Nota
  • Os painéis LLM estão disponíveis para services de inferência LLM que utilizam o mecanismo vLLM ou SGLang. Use uma imagem oficial do PAI-EAS ou defina ServiceEngineType como sglang ou vllm nos rótulos do service. Para mais informações, consulte LLM monitoring metrics > Prerequisites.

  • Os painéis GPU estão disponíveis apenas para services que utilizam GPUs.

  • Dimensão Service: Visualize métricas de monitoramento de todo o service. Ao selecionar Service na lista suspensa, os seguintes painéis ficam disponíveis:

    • Service-<service_name> (onde <service_name> é o nome do service EAS): painel de monitoramento do service. Exibe métricas gerais como QPS, RT, CPU e Memory.

    • LLM: Exibe métricas de monitoramento baseadas no mecanismo de inferência (SGLang ou vLLM) utilizado pelo service LLM, como throughput de requisições e uso de tokens.

    • GPU: Mostra métricas de hardware da GPU, incluindo utilização de SM, largura de banda de memória e erros de NVSwitch.

  • Dimensão Instance: Visualize métricas de monitoramento de instâncias individuais. Ao selecionar Instance na lista suspensa, os seguintes painéis ficam disponíveis:

    • Single Instance: Painel de monitoramento de instância única. Permite selecionar apenas uma instância por vez. Disponibiliza somente métricas de monitoramento no nível de minuto.

    • Multiple Instance: Painel de monitoramento de múltiplas instâncias. Possibilita a seleção de várias instâncias para comparação. Oferece métricas de monitoramento nos níveis de minuto e de segundo.

    • LLM Instance: Painel de monitoramento de instância LLM. Permite selecionar uma ou mais instâncias para comparação e exibe métricas de inferência LLM no nível da instância.

    • GPU Instance: Painel de monitoramento de instância GPU. Suporta a seleção de uma ou mais instâncias para comparação, apresentando métricas detalhadas de hardware da GPU no nível da instância.

A tabela a seguir mapeia cada painel à seção de métricas correspondente.

Painel

Seção de métricas

Service-<service_name>

Monitoring metrics > Service Monitoring Dashboard

Single Instance

Monitoring metrics > Single Instance Monitoring Dashboard (Minute-Level)

Multiple Instance

Monitoring metrics > Multiple Instance Monitoring Dashboard

GPU / GPU Instance

Monitoring metrics > GPU Monitoring Dashboard

LLM / LLM Instance

LLM monitoring metrics

Alterar intervalo de tempo

Clique em image no lado direito da área Monitor para alterar o intervalo de tempo dos painéis.

No painel de seleção de tempo que se abre, especifique um horário inicial e final personalizado (From / To) em Absolute time range à esquerda ou selecione um intervalo predefinido, como Last 5 minutes até Last 7 days, na lista Relative time ranges à direita. O intervalo selecionado é marcado com um sinal de verificação (✓).

Importante

As métricas no nível de minuto são retidas por até 1 mês. As métricas no nível de segundo são retidas por até 1 hora.

Métricas de monitoramento

Painel de Monitoramento de Service (Nível de Minuto)

Este painel rastreia as seguintes métricas:

Métrica

Descrição

QPS

Requisições por segundo, agrupadas por código de retorno. Somadas entre instâncias para services com múltiplas instâncias. O deslocamento de 1d mostra o QPS do dia anterior para comparação de tendências.

Response

Total de respostas no intervalo de tempo selecionado, agrupadas por código de retorno. Somadas entre instâncias para services com múltiplas instâncias.

RT

Tempo de resposta da requisição.

  • Avg: Tempo médio de resposta de todas as requisições.

  • TPXX: Tempo de resposta no percentil XX.

    Por exemplo, TP5 é o tempo máximo de resposta no 5º percentil. TP100 é o máximo entre todas as requisições.

    Para services com múltiplas instâncias, TP100 representa o máximo entre todas as instâncias. Os demais valores de TPXX correspondem à média entre as instâncias.

Daily Invoke

Contagem diária de chamadas, agrupada por código de retorno. Somada entre instâncias para services com múltiplas instâncias.

Mais Métricas (CPU | Memory | GPU | Network | Resources)

Métrica

Descrição

CPU

CPU

Uso médio de CPU do service. Unidade: núcleos de CPU. Média entre instâncias para services com múltiplas instâncias.

CPU Utilization

Utilização média de CPU do service. Cálculo: Uso médio de CPU ÷ Máximo de núcleos de CPU disponíveis. Média entre instâncias para services com múltiplas instâncias.

CPU Total

Total de núcleos de CPU disponíveis para o service. Cálculo: Núcleos de CPU disponíveis por instância individual × Número de instâncias do service.

Memory

Memory

Uso médio de memória do service. Média entre instâncias para services com múltiplas instâncias.

  • RSS: Tamanho da memória física residente.

  • Cache: Tamanho do cache.

  • Total: Tamanho máximo de memória física disponível para uma única instância.

Memory Utilization

Utilização média de memória do service. Cálculo: Memory RSS ÷ Memory Total. Média entre instâncias para services com múltiplas instâncias.

GPU

GPU Utilization

Para services habilitados para GPU, utilização média da GPU. Média entre instâncias para services com múltiplas instâncias.

GPU Memory

Para services habilitados para GPU, uso de memória da GPU. Média entre instâncias para services com múltiplas instâncias.

GPU Total

Para services habilitados para GPU, quantidade total de GPUs. Para services com múltiplas instâncias, esta métrica representa a soma das GPUs em todas as instâncias.

GPU Memory Utilization

Para services habilitados para GPU, utilização da memória da GPU. Média entre instâncias para services com múltiplas instâncias.

Network

Traffic

Tráfego recebido e enviado pelo service, em bits por segundo. Média entre instâncias para services com múltiplas instâncias.

Onde:

  • In: Tráfego recebido.

  • Out: Tráfego enviado.

TCP Connections

Número de conexões TCP.

Resources

Replicas

Número de instâncias de service em diferentes estados: Total, Pending, Available.

Replicas By Resource

Número de instâncias de service por tipo de recurso: Total, Dedicated (recursos dedicados), Public (recursos públicos).

Painel de Monitoramento de Instância Única (Nível de Minuto)

Este painel rastreia as seguintes métricas:

Métrica

Descrição

QPS

Requisições por segundo recebidas por esta instância. Agrupadas por código de retorno.

RT

Tempo de resposta das requisições para esta instância.

Response

Total de respostas recebidas por esta instância dentro do intervalo de tempo selecionado. Agrupadas por código de retorno.

Mais Métricas (CPU | Memory | GPU | Network | Resources)

Métrica

Descrição

CPU

CPU

Uso de CPU desta instância, em núcleos de CPU.

CPU Utilization

Utilização média de CPU desta instância. Cálculo: Uso médio de CPU ÷ Máximo de núcleos de CPU disponíveis.

Memory

Memory

Uso de memória desta instância.

  • RSS: Tamanho da memória física residente.

  • Cache: Tamanho do cache.

  • Total: Tamanho máximo de memória física disponível para uma única instância.

Memory Utilization

Utilização média de memória desta instância. Cálculo: Memory RSS ÷ Memory Total.

GPU

GPU Utilization

Utilização da GPU desta instância.

GPU Memory

Uso de memória da GPU desta instância.

GPU Memory Utilization

Utilização da memória da GPU desta instância.

Network

Traffic

Tráfego recebido e enviado por esta instância, em bits por segundo.

Onde:

  • In: Tráfego recebido.

  • Out: Tráfego enviado.

TCP Connections

Número de conexões TCP.

Painel de Monitoramento de Múltiplas Instâncias

Métricas no nível de minuto e de segundo:

  • Nível de Minuto

    Métrica

    Descrição

    Instance QPS

    Requisições por segundo para cada instância. Agrupadas por código de retorno.

    Instance RT

    Tempo médio de resposta para cada instância.

    Instance CPU

    Uso de CPU para cada instância, em núcleos de CPU.

    Instance Memory -- RSS

    Tamanho da memória física residente para cada instância.

    Instance Memory -- Cache

    Tamanho do cache para cada instância.

    Instance GPU

    Utilização da GPU para cada instância.

    Instance GPU Memory

    Uso de memória da GPU para cada instância.

    Instance TCP Connections

    Número de conexões TCP para cada instância.

  • Nível de Segundo

    Importante

    A granularidade dos dados é de 5 segundos. Apenas a última 1 hora de dados é retida.

    Métrica

    Descrição

    Instance QPS Fine

    Requisições por segundo recebidas por cada instância. Agrupadas por código de retorno.

    Instance RT Fine

    Tempo médio de resposta para requisições recebidas por cada instância.

Painel de Monitoramento de GPU

Métricas de GPU nos níveis de service e de instância. Os valores no nível de service representam a média de todas as instâncias.

Métrica

Descrição

GPU Utilization

Utilização da GPU do service.

GPU Memory

Uso de memória da GPU e memória total da GPU do service.

  • Used: Uso de memória da GPU.

  • Total: Memória total da GPU.

Memory Copy Utilization

Utilização de cópia de memória da GPU do service.

GPU Memory Utilization

Utilização da memória da GPU do service. Cálculo: Uso de memória ÷ Memória total.

PCIe

Taxa PCIe (Peripheral Component Interconnect Express) do service, medida pelo DCGM. PCIe é um padrão de barramento de expansão serial de alta velocidade para computadores.

  • PCIe Transmit: Taxa de transmissão PCIe.

  • PCIe Receive: Taxa de recepção PCIe.

Memory Bandwidth

Métrica de largura de banda de memória da GPU do service.

SM Utilization and Occupancy

Métricas relacionadas a SM (Streaming Multiprocessor) do service. Os SMs são componentes centrais de uma GPU, responsáveis por executar e agendar tarefas de computação paralela.

  • SM Utilization: Utilização do SM.

  • SM Occupancy: Proporção de threads Warp residentes no SM.

Graphics Engine Utilization

Utilização do mecanismo gráfico da GPU do service.

Pipe Active Ratio

Taxa de atividade dos pipelines de computação da GPU do service.

  • Pipe Fp32 Active Ratio: Taxa de atividade do pipeline FP32.

  • Pipe Fp16 Active Ratio: Taxa de atividade do pipeline FP16.

  • Pipe Tensor Active Ratio: Taxa de atividade do pipeline Tensor.

Tflops Usage

Volume de computação Tflops (Tera operações de ponto flutuante por segundo) dos pipelines de computação da GPU do service.

  • FP32 Tflops Used: Volume de computação Tflops do pipeline FP32.

  • FP16 Tflops Used: Volume de computação Tflops do pipeline FP16.

  • Tensor Tflops Used: Volume de computação Tflops do pipeline Tensor.

DRAM Active Ratio

Taxa de atividade da interface de memória do dispositivo GPU ao enviar ou receber dados.

SM Clock

Frequência de clock do SM do service.

GPU Temperature

Métricas relacionadas à temperatura da GPU do service.

  • GPU Temperature: Temperatura da GPU.

  • GPU Slowdown Temperature: Limiar de temperatura para redução de desempenho da GPU. Quando a temperatura da GPU atinge este valor, ela reduz automaticamente sua frequência operacional para evitar superaquecimento.

  • GPU Shutdown Temperature: Limiar de temperatura para desligamento da GPU. Quando a temperatura da GPU atinge este valor, o sistema força o desligamento do dispositivo GPU para evitar danos ao hardware ou falhas graves no sistema devido ao superaquecimento.

Power Usage

Consumo de energia da GPU do service.

A seguir estão as métricas de status de integridade da GPU e informações de anomalias:

Métrica

Descrição

GPU Health Count

Número de placas GPU íntegras para o service.

GPU Lost Card Num

Número de placas GPU perdidas para o service.

ECC Error Count

Número de erros ECC para o service. ECC (Error Correction Code) detecta e corrige erros durante a transmissão ou armazenamento de dados na memória da GPU.

  • Volatile SBE ECC Error: Número de erros ECC voláteis de bit único para o service.

  • Volatile DBE ECC Error: Número de erros ECC voláteis de bit duplo para o service.

  • Aggregate SBE ECC Error: Número de erros ECC persistentes de bit único para o service.

  • Aggregate DBE ECC Error: Número de erros ECC persistentes de bit duplo para o service.

  • Uncorrectable ECC Error: Número de erros ECC incorrigíveis para o service.

NVSwitch Error Count

Número de erros NVSwitch para o service. O NVSwitch fornece canais de comunicação de alta largura de banda e baixa latência para comunicação rápida entre múltiplas GPUs.

  • NVSwitch Fatal Error: Número de erros fatais do NVSwitch para o service.

  • NVSwitch Non-Fatal Error: Número de erros não fatais do NVSwitch para o service.

Xid Error Count

Número de erros Xid para o service. Erros Xid são códigos relatados pelo driver da GPU que indicam problemas encontrados durante a operação. Esses erros geralmente são registrados em logs do sistema (como dmesg do Linux ou Visualizador de Eventos do Windows) e representados como códigos Xid.

  • Xid Error: Número de erros Xid não fatais para o service.

  • Fatal Xid Error: Número de erros Xid fatais para o service.

Kernel Error Count

Número de erros não-Xid para o service. Erros não-Xid referem-se a outros tipos de erros relatados em logs do kernel, excluindo erros Xid.

Driver Hang

Número de travamentos do driver da GPU para o service.

Remap Status

Estado do service quando a GPU tenta remapear linhas de memória da GPU.

Métricas de monitoramento de LLM

As métricas de monitoramento de LLM aparecem no painel LLM ou LLM Instance, independentemente de o service usar o mecanismo vLLM ou SGLang. Consulte as métricas correspondentes ao mecanismo utilizado.

Pré-requisitos

Os painéis de LLM são exibidos quando qualquer uma das seguintes condições é atendida:

  • Uso de uma imagem oficial do PAI-EAS.

  • Definição de ServiceEngineType como sglang ou vllm nos rótulos do service. Exemplo:

    {
      "labels": {
        "ServiceEngineType": "sglang"
      }
    }

Nota:

  • O backend do EAS chama o endpoint /metrics do mecanismo a cada 10 a 15 segundos para coletar métricas do Prometheus. Portanto, entradas /metrics 200 aparecem regularmente nos logs do service.

  • As métricas no nível de minuto são retidas por até 1 mês.

Regras de agregação para múltiplas instâncias

Para services com múltiplas instâncias, as métricas de throughput, contagem e capacidade são somadas entre todas as instâncias. Já as métricas de proporção, utilização e latência média são calculadas pela média entre todas as instâncias.

Painel de Monitoramento SGLang

Requests

Métrica

Descrição

Métrica Prometheus

Running & Waiting Reqs

Número de requisições neste momento.

  • Running: Número de requisições atualmente em execução na GPU (concorrência em tempo real).

  • Waiting: Número de requisições enfileiradas na fila de espera. Um valor consistentemente maior que 0 indica sobrecarga.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:num_running_reqs

sglang:num_queue_reqs

Request Rate (success/abort/fail)

Taxa de requisições neste momento, em requisições por segundo.

  • requests: Taxa de requisições concluídas.

  • aborted: Taxa de requisições abortadas devido a desconexão do cliente, tempo limite ou aborto explícito.

  • transfer_failed: Taxa de requisições com falhas na transferência de cache KV no modo de desagregação PD.

  • failed_session_recoveries: Taxa de recuperações de sessão de transporte Mooncake (removidas da lista de bloqueios) no modo de desagregação PD.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:num_requests_total

sglang:num_aborted_requests_total

sglang:num_transfer_failed_reqs_total

sglang:failed_session_recoveries_total

Prompt & Generation Token Rate

Taxa de tokens de entrada e saída neste momento.

  • TPS_IN: Número de tokens de entrada (Prefill) processados por segundo.

  • TPS_OUT: Número de tokens de saída (Decode) gerados por segundo.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:prompt_tokens_total

sglang:generation_tokens_total

Latency

Métrica

Descrição

Métrica Prometheus

Queue Time

Latência de espera na fila para todas as requisições neste momento, desde a entrada na fila de espera até o agendamento pelo escalonador para computação.

  • Avg: Latência média ponderada na fila entre todas as requisições.

  • P50/P95/P99: Valores percentis da latência na fila entre todas as requisições.

sglang:queue_time_seconds

Time To First Token

Latência de tempo até o primeiro token (TTFT) para todas as requisições neste momento, desde o recebimento da requisição até a geração do primeiro token.

  • Avg: TTFT médio ponderado entre todas as requisições.

  • P50/P95/P99: Valores percentis do TTFT entre todas as requisições.

sglang:time_to_first_token_seconds

Time Per Output Token

Latência de tempo por token de saída (TPOT/ITL) para todas as requisições neste momento; corresponde ao tempo necessário para cada token de saída subsequente após a geração do primeiro token.

  • Avg: TPOT médio ponderado entre todas as requisições.

  • P50/P95/P99: Valores percentis do TPOT entre todas as requisições.

sglang:inter_token_latency_seconds

E2E Request Latency

Latência de ponta a ponta para todas as requisições neste momento, desde o recebimento da requisição até o retorno de todos os tokens.

  • Avg: Latência média ponderada de ponta a ponta entre todas as requisições.

  • P50/P95/P99: Valores percentis da latência de ponta a ponta entre todas as requisições.

Nota

Esta métrica é fornecida pelo mecanismo SGLang. A métrica RT no painel de monitoramento de service é fornecida pelo mecanismo EAS (easworker). Para cenários de LLM, recomenda-se esta métrica.

sglang:e2e_request_latency_seconds

Latency by PD Stage (Avg)

Tempo médio gasto em cada estágio de processamento neste momento, plotado como curvas separadas pelo rótulo stage. Use esta métrica para identificar qual estágio consome mais latência. Os estágios comuns incluem:

  • tokenize (tokenização), api_server_dispatch (despacho do Servidor api), dpc_dispatch (despacho do controlador DP), request_process (recebimento e processamento pelo escalonador)

  • prefill_waiting/decode_waiting (espera na fila)

  • prefill_forward/prefill_chunked_forward/decode_forward/decode_loop (computação forward)

  • mm_encode (codificação multimodal)

  • spec_draft/spec_verify (rascunho e verificação de decodificação especulativa)

  • Estágios de desagregação PD: prefill_bootstrap/prefill_transfer_kv_cache/decode_prealloc/decode_bootstrap/decode_transferred

sglang:per_stage_req_latency_seconds

Token Length Distribution

Métrica

Descrição

Métrica Prometheus

Prompt Tokens Length

Distribuição dos comprimentos de tokens de entrada para todas as requisições neste momento.

  • Avg: Comprimento médio ponderado dos tokens de entrada.

  • P50/P95/P99: Valores percentis do comprimento dos tokens de entrada.

sglang:prompt_tokens_histogram

Uncached Prompt Tokens Length

Distribuição dos comprimentos de tokens de entrada que não atingiram o cache e exigem computação real neste momento (igual ao comprimento do token de entrada menos o comprimento do token de acerto no cache de prefixo). Esta métrica representa a sobrecarga real de computação do estágio Prefill.

  • Avg: Comprimento médio ponderado dos tokens de entrada sem cache.

  • P50/P95/P99: Valores percentis do comprimento dos tokens de entrada sem cache.

sglang:uncached_prompt_tokens_histogram

Generation Tokens Length

Distribuição dos comprimentos de tokens de saída para todas as requisições neste momento.

  • Avg: Comprimento médio ponderado dos tokens de saída.

  • P50/P95/P99: Valores percentis do comprimento dos tokens de saída.

sglang:generation_tokens_histogram

Token Throughput

Métrica

Descrição

Métrica Prometheus

Token Rate by Phase (Prefill/Decode)

Taxa de processamento de tokens por fase neste momento, plotada como curvas separadas pelo rótulo mode.

  • prefill_compute: Taxa de tokens efetivamente computados durante o estágio Prefill.

  • prefill_cache: Taxa de tokens servidos a partir de acertos no cache de prefixo durante o estágio Prefill (sem necessidade de computação).

  • decode: Taxa de tokens gerados durante o estágio Decode.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:realtime_tokens_total

Decode Sum Seq Lens

Soma de todos os comprimentos de sequência nos lotes Decode neste momento. Reflete a escala real de leitura da computação Attention no estágio Decode.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:decode_sum_seq_lens

Cache Hierarchy

Métrica

Descrição

Métrica Prometheus

Prefix Cache Hit Rate

Taxa média de acerto no cache de prefixo para todas as requisições neste momento.

Para services com múltiplas instâncias, esta métrica corresponde à média entre todas as instâncias.

sglang:cache_hit_rate

Cached Prompt Tokens by Source

Taxa de tokens de entrada em cache neste momento, plotada como curvas separadas pelo rótulo cache_source para mostrar os níveis de hierarquia de cache.

  • device: Acertos no cache de prefixo na memória da GPU (L1).

  • host: Acertos no cache de memória host HiCache (L2).

  • storage_<backend>: Acertos no backend de armazenamento externo HiCache (L3), com sufixo indicando o nome do backend.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:cached_tokens_total

Cache Hit Ratio by Source

Proporção de acertos no cache por nível de hierarquia neste momento. Cálculo: taxa de tokens para cada nível ÷ taxa total de tokens de entrada. Os valores são normalizados de 0 a 1.

  • <cache_source> ratio: Proporção de acertos para cada nível (device/host/storage_<backend>).

  • uncached: Proporção de tokens de entrada que não atingiram nenhum nível de cache e exigem computação real.

sglang:cached_tokens_total

sglang:prompt_tokens_total

HiCache Host Tokens

Nível de tokens no cache de memória host HiCache (L2) neste momento. Exibido apenas quando o HiCache está ativado.

  • used: Número de tokens usados no cache do host.

  • total: Capacidade total de tokens do cache do host.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:hicache_host_used_tokens

sglang:hicache_host_total_tokens

Eviction Duration (GPU→CPU)

Tempo para evacuar o cache KV da GPU para a memória do host neste momento.

  • Avg: Duração média ponderada da evicção.

  • P99: Duração da evicção no 99º percentil.

sglang:eviction_duration_seconds

Load Back Duration (CPU→GPU)

Tempo para carregar o cache KV da memória do host de volta para a GPU neste momento. Esta duração é adicionada diretamente ao TTFT das requisições que atingem o cache L2.

  • Avg: Duração média ponderada do carregamento.

  • P99: Duração do carregamento no 99º percentil.

sglang:load_back_duration_seconds

Cache Tokens Flow (L1↔L2↔L3)

Taxa de fluxo de tokens do cache KV entre os três níveis de armazenamento neste momento. Use esta métrica para determinar a direção e a pressão do movimento de dados do HiCache.

  • L3→L2 prefetched (storage→host): Taxa de tokens pré-buscados do armazenamento externo para a memória do host.

  • L2→L1 load_back (host→GPU): Taxa de tokens carregados da memória do host de volta para a GPU.

  • L2→L3 backuped (host→storage): Taxa de tokens copiados da memória do host para o armazenamento externo.

  • L1→L2 evicted (GPU→host): Taxa de tokens evacuados da GPU para a memória do host.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:prefetched_tokens_total

sglang:load_back_tokens_total

sglang:backuped_tokens_total

sglang:evicted_tokens_total

KV Cache Pool

Os painéis a seguir mostram a composição e a pressão de cada pool de memória por dimensão de slot e dimensão de utilização. Para services com múltiplas instâncias, as métricas de slots são somadas entre todas as instâncias, enquanto as métricas de utilização e proporção correspondem à média entre todas as instâncias.

Métrica

Descrição

Métrica Prometheus

KV Cache Tokens Pool

Composição de slots do pool principal de cache KV neste momento.

  • available: Número de slots de tokens completamente ociosos que podem ser alocados diretamente.

  • evictable: Número de slots de tokens ocupados pelo cache de prefixo Radix que podem ser evacuados e reutilizados quando necessário.

  • used: Número de slots de tokens atualmente ocupados por requisições em execução.

Nota

É normal que available seja 0 enquanto evictable é alto. Isso indica que a memória da GPU está totalmente utilizada pelo cache de prefixo. Somente quando tanto available quanto evictable se aproximam de 0 é que isso indica uma verdadeira escassez de memória da GPU.

sglang:kv_available_tokens

sglang:kv_evictable_tokens

sglang:kv_used_tokens

SWA Tokens Pool

Composição de slots do pool de sliding window attention (SWA) neste momento, com curvas available/evictable/used. Os significados são os mesmos descritos acima. Exibido apenas para modelos SWA híbridos.

sglang:swa_available_tokens

sglang:swa_evictable_tokens

sglang:swa_used_tokens

Mamba SSM Pool

Composição de slots do pool de estado Mamba SSM neste momento, com curvas available/evictable/used. Os significados são os mesmos descritos acima. Exibido apenas para modelos SSM híbridos (Mamba/GDN/KDA).

Nota

Os slots neste pool são alocados por requisição, e não por token. Esta é uma restrição rígida comum para concorrência em modelos híbridos.

sglang:mamba_available_tokens

sglang:mamba_evictable_tokens

sglang:mamba_used_tokens

KV Cache Used Tokens

Número de tokens de cache KV usados neste momento.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:num_used_tokens

KV Cache Usage Ratio

Utilização média de tokens do cache KV neste momento. Um valor consistentemente próximo de 1 indica que o pool de memória da GPU se tornou um gargalo de throughput, o que aciona o enfileiramento ou retração de requisições.

Para services com múltiplas instâncias, esta métrica corresponde à média entre todas as instâncias.

sglang:token_usage

KV Usage by Pool (Full/SWA/Mamba)

Utilização média de cada pool de memória neste momento. Use esta métrica para modelos de atenção híbrida para identificar qual pool satura primeiro.

  • full: Utilização do pool KV da camada de atenção completa.

  • swa: Utilização do pool KV da camada de sliding window attention (SWA). Exibido apenas para modelos SWA híbridos.

  • mamba: Utilização do pool de estado da camada de atenção Mamba/linear. Exibido apenas para modelos SSM híbridos.

  • pending_prealloc: Proporção de tokens pré-reservados, mas ainda não pré-alocados no modo de desagregação PD.

Para services com múltiplas instâncias, esta métrica corresponde à média entre todas as instâncias.

sglang:full_token_usage

sglang:swa_token_usage

sglang:mamba_usage

sglang:pending_prealloc_token_usage

KV Transfer

Os painéis a seguir contêm dados apenas quando o service é implantado no modo de desagregação PD (Desagregação Prefill/Decode). Para services com múltiplas instâncias, as métricas de latência são médias ponderadas entre todas as instâncias.

Métrica

Descrição

Métrica Prometheus

KV Transfer Latency

Tempo para transferir o cache KV das instâncias Prefill para as instâncias Decode neste momento, em milissegundos.

  • Avg: Duração média ponderada da transferência.

  • P50/P95/P99: Valores percentis da duração da transferência.

sglang:kv_transfer_latency_ms

KV Transfer Total MB

Tamanho dos dados de uma única transferência KV neste momento, em MB.

  • Avg: Tamanho médio ponderado dos dados por transferência.

  • P99: Tamanho dos dados no 99º percentil por transferência.

sglang:kv_transfer_total_mb

KV Transfer Speed

Largura de banda de transferência KV neste momento.

  • Avg: Largura de banda média ponderada da transferência.

  • P99: Largura de banda de transferência no 99º percentil.

sglang:kv_transfer_speed_gb_s

KV Transfer Bootstrap

Tempo para estabelecimento de conexão de handshake (bootstrap) da transferência KV neste momento, em milissegundos. Um valor alto geralmente indica problemas de troca de metadados ou de conexão de rede entre as instâncias Prefill e Decode, e não problemas de largura de banda.

  • Avg: Duração média ponderada do estabelecimento de conexão.

  • P50/P95/P99: Valores percentis da duração do estabelecimento de conexão.

sglang:kv_transfer_bootstrap_ms

KV Transfer Alloc Wait

Tempo que as instâncias Decode passam esperando pela alocação de memória da GPU para receber o cache KV neste momento, em milissegundos. Um valor alto indica contenção de memória da GPU no lado Decode, o que sinaliza uma proporção desequilibrada no cluster PD.

  • Avg: Duração média ponderada da espera.

  • P99: Duração da espera no 99º percentil.

sglang:kv_transfer_alloc_ms

Speculative Decoding

Os painéis a seguir contêm dados apenas quando a decodificação especulativa está ativada. Os painéis são plotados como curvas separadas por pp_rank/moe_ep_rank (formato da legenda: pp{pp_rank}/ep{moe_ep_rank}). Cada curva representa a média entre todas as instâncias.

Métrica

Descrição

Métrica Prometheus

Spec Accept Length (draft→target)

Comprimento médio de aceitação da decodificação especulativa neste momento (τ no artigo), que é o número de tokens realmente produzidos por etapa de verificação, incluindo o token bônus que o modelo alvo sempre produz. Um valor de 1 significa que a decodificação especulativa não tem efeito (apenas o token bônus é produzido por etapa). Um valor mais alto indica uma aceleração maior.

sglang:spec_accept_length

Spec Accept Rate

Taxa de aceitação de rascunhos da decodificação especulativa neste momento (α no artigo). Cálculo: tokens de rascunho aceitos ÷ tokens de rascunho propostos, excluindo tokens bônus. Reflete o quão próxima a distribuição do modelo de rascunho está da distribuição do modelo alvo.

sglang:spec_accept_rate

Spec Steps & Draft Tokens

Parâmetros de configuração ativos da decodificação especulativa neste momento.

  • steps: Etapas especulativas atuais (speculative_num_steps).

  • draft_tokens: Contagem atual de tokens de rascunho (speculative_num_draft_tokens). Quando topk > 1, este valor é desacoplado do número de etapas.

Nota

Quando a decodificação especulativa adaptativa está ativada, esta configuração muda dinamicamente com a carga de trabalho. Compare isso com a curva Accept Length para determinar se a estratégia adaptativa é apropriada.

sglang:spec_num_steps

sglang:spec_num_draft_tokens

Scheduling

Métrica

Descrição

Métrica Prometheus

Queue Reqs by PD Stage

Número de requisições em cada fila de desagregação PD neste momento. Use esta métrica para identificar onde as requisições se acumulam no pipeline PD.

  • prefill_bootstrap: Requisições aguardando conexão de handshake no lado Prefill.

  • prefill_inflight: Requisições com cache KV em trânsito no lado Prefill.

  • decode_prealloc: Requisições aguardando pré-alocação de memória da GPU no lado Decode.

  • decode_transfer: Requisições aguardando a conclusão da transferência do cache KV no lado Decode.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:num_prefill_bootstrap_queue_reqs

sglang:num_prefill_inflight_queue_reqs

sglang:num_decode_prealloc_queue_reqs

sglang:num_decode_transfer_queue_reqs

SLO Utilization

Nível de carga relativo à capacidade do SLO neste momento. Cálculo: max(requisições em execução ÷ concorrência máxima sob SLO, utilização do cache KV ÷ 0,9). Esta métrica pode servir de referência para Auto Scaling.

Para services com múltiplas instâncias, esta métrica corresponde à média entre todas as instâncias.

sglang:utilization

CUDA Graph Passes

Taxa de passagens forward classificadas pelo status de acerto no CUDA Graph neste momento, plotada como curvas separadas pelo rótulo mode.

  • decode_cuda_graph/decode_none: Taxa de passagens forward Decode com/sem acertos no CUDA Graph.

  • prefill_cuda_graph/prefill_none: Taxa de passagens forward Prefill com/sem acertos no CUDA Graph.

Nota

Uma alta proporção de *_none indica que as formas dos lotes frequentemente ficam fora dos Graphs capturados. Otimize esse cenário ajustando a lista de tamanhos de lote para captura do CUDA Graph.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:cuda_graph_passes_total

Forward Occupancy

Ocupação da GPU pela computação forward neste momento. Cálculo: tempo de execução forward da GPU ÷ tempo de relógio de parede dentro da janela estatística. Faixa de valores: 0 a 100. Um valor baixo indica sobrecarga de agendamento da CPU ou tempo ocioso da GPU. Esta é a primeira métrica a verificar quando o throughput não atende às expectativas.

Nota

Os dados estão disponíveis apenas quando o temporizador do dispositivo no lado do mecanismo está ativado. Depois que o service fica ocioso, este valor é definido como NaN para evitar poluir as estatísticas.

Para services com múltiplas instâncias, esta métrica corresponde à média entre todas as instâncias.

sglang:fwd_occupancy

New Token Ratio

Proporção de cota de novos tokens do escalonador neste momento. Este valor é um coeficiente de conservadorismo adaptativo para pressão de memória da GPU: diminui quando a memória da GPU está escassa para reduzir a admissão de novas requisições e evitar retração, e recupera gradualmente para 1 quando a pressão diminui.

Para services com múltiplas instâncias, esta métrica corresponde à média entre todas as instâncias.

sglang:new_token_ratio

CUDA Graph Active

Indica se os lotes estão sendo executados no CUDA Graph neste momento. 1 significa ativado, 0 significa fallback para modo eager.

Para services com múltiplas instâncias, esta métrica corresponde à média entre todas as instâncias (o que pode ser entendido como a proporção de instâncias com CUDA Graph ativado).

sglang:is_cuda_graph

HTTP

Métrica

Descrição

Métrica Prometheus

HTTP Requests Rate

Taxa de requisições agrupadas por método de requisição e caminho neste momento, em requisições por segundo.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:http_requests_total

HTTP Responses Rate by Status

Taxa de respostas agrupadas por caminho e código de status da resposta neste momento, em requisições por segundo. Use esta métrica para distinguir erros de cliente (4xx) de erros de servidor (5xx).

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:http_responses_total

HTTP Active Requests

Número de requisições em trânsito (ainda não retornadas) agrupadas por método de requisição e caminho neste momento. Esta métrica conta requisições em trânsito na camada HTTP, incluindo aquelas ainda na fila que não entraram no mecanismo. Portanto, este valor geralmente é maior que Running Reqs.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:http_requests_active

System & Engine

Métrica

Descrição

Métrica Prometheus

Disaggregation Routing Keys

Número de chaves de roteamento neste momento. Use esta métrica para observar a distribuição da desagregação PD ou roteamento de afinidade de múltiplas instâncias.

  • routing_keys_active: Número de chaves de roteamento únicas com requisições em trânsito na camada HTTP.

  • unique_running_routing_keys: Número de chaves de roteamento únicas no lote em execução atual.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:routing_keys_active

sglang:num_unique_running_routing_keys

Process CPU by Component

Núcleos de CPU (usuário + kernel) consumidos por cada processo do mecanismo neste momento, plotados como curvas separadas pelo rótulo component (tokenizer, detokenizer, data_parallel_controller). Use esta métrica para identificar gargalos no lado da CPU. Por exemplo, se o tokenizador saturar um único núcleo, o throughput geral será diretamente limitado.

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:process_cpu_seconds_total

Engine Meta

Configuração estática do mecanismo e informações de inicialização do service. Use esta métrica para verificar se os parâmetros reais correspondem às expectativas.

  • max_total_num_tokens: Capacidade máxima de tokens do pool de cache KV.

  • num_pages: Número de páginas de cache KV.

  • page_size: Tamanho da página de cache KV (número de tokens).

  • context_len: Comprimento máximo de contexto do modelo.

  • startup_available_gpu_memory_gb: Memória da GPU disponível na inicialização (GB), somada entre todas as instâncias.

  • engine_startup_time: Duração de inicialização do mecanismo de ponta a ponta (segundos).

  • engine_load_weights_time: Duração do carregamento dos pesos do modelo (segundos).

Exceto pelos itens de memória, todas as métricas assumem o valor máximo entre todas as instâncias.

sglang:max_total_num_tokens

sglang:num_pages

sglang:page_size

sglang:context_len

sglang:startup_available_gpu_memory_gb

sglang:startup_time_seconds

Request State (retracted/paused)

Número de requisições em estados de execução anormais neste momento.

  • retracted: Número de requisições retraídas para a fila de espera devido à escassez de memória da GPU que precisam ser preenchidas novamente. Um valor consistentemente maior que 0 significa desperdício de recursos computacionais em computação redundante. Considere reduzir a concorrência ou aumentar a escala.

  • paused: Número de requisições pausadas devido à sincronização assíncrona de pesos (por exemplo, atualizações de peso em cenários RLHF).

Para services com múltiplas instâncias, esta métrica é somada entre todas as instâncias.

sglang:num_retracted_reqs

sglang:num_paused_reqs

Caminhos comuns de solução de problemas

Sintoma

Ordem de verificação recomendada

TTFT alto

Queue Time → Waiting Reqs → Uncached Prompt Tokens Length → Prefix Cache Hit Rate → Load Back Duration

TPOT alto

Running Reqs (concorrência excessiva) → Decode Sum Seq Lens → KV Cache Usage Ratio → Forward Occupancy → Proporção decode_none em CUDA Graph Passes

Baixo throughput, mas utilização da GPU não é alta

Forward Occupancy → Process CPU by Component → CUDA Graph Passes → New Token Ratio

Escassez de memória da GPU / requisições retraídas

retracted em Request State → KV Cache Tokens Pool (verifique se tanto available quanto evictable caem para zero) → KV Usage by Pool → New Token Ratio

Modelo de atenção híbrida não consegue aumentar a concorrência

KV Usage by Pool (compare full/swa/mamba) → Mamba SSM Pool

Pipeline de desagregação PD está lento

Queue Reqs by PD Stage → KV Transfer Bootstrap → KV Transfer Latency/Speed → KV Transfer Alloc Wait

Decodificação especulativa não fornece aceleração

Spec Accept Length (próximo de 1?) → Spec Accept Rate → Spec Steps & Draft Tokens

Encontrar a concorrência máxima recente

Altere o intervalo de tempo e encontre o pico da curva Running em Running & Waiting Reqs

Painel de Monitoramento VLLM

Para services com múltiplas instâncias, as métricas de throughput são somadas e as métricas de latência correspondem à média entre as instâncias.

Métrica

Descrição

Requests Status

Total de requisições para o service.

  • Running: Número de requisições em execução na GPU.

  • Waiting: Número de requisições aguardando processamento.

  • Swapped: Número de requisições trocadas para a CPU.

Token Throughput

Número de tokens de entrada e gerados para todas as requisições do service.

  • TPS_IN: Número de tokens de entrada.

  • TPS_OUT: Número de tokens de saída.

Request Completion Status

Estatísticas de status de conclusão para todas as requisições do service.

  • preemptions: Requisições preemptadas.

  • stop: Requisições concluídas com sucesso devido a término natural (o modelo produziu um token de parada, como <EOS>).

  • length: Requisições que atingiram o comprimento máximo de tokens de saída.

  • abort: Requisições terminadas forçadamente.

Time To First Token

Latência de tempo até o primeiro token para todas as requisições do service (tempo desde o recebimento de uma requisição até a geração do primeiro token).

  • Avg: Latência média de tempo até o primeiro token para todas as requisições.

  • TPXX: Valores percentis para a latência de tempo até o primeiro token para todas as requisições.

Time Per Output Token

Latência de tempo por token de saída para todas as requisições do service (tempo médio necessário para cada token de saída após a geração do primeiro token).

  • Avg: Latência média de tempo por token para todas as requisições.

  • TPXX: Valores percentis para a latência de tempo por token para todas as requisições.

E2E Request Latency

Latência de ponta a ponta para todas as requisições do service (tempo desde o recebimento de uma requisição até o retorno de todos os tokens).

  • Avg: Latência média de ponta a ponta para todas as requisições.

  • TPXX: Valores percentis para a latência de ponta a ponta para todas as requisições.

Queue Time

Latência de espera na fila para todas as requisições do service (tempo que as requisições aguardam na fila para processamento pelo mecanismo).

  • Avg: Latência média de espera na fila para todas as requisições.

  • TPXX: Valores percentis para a latência de espera na fila para todas as requisições.

Inference Time

Latência de inferência para todas as requisições do service (tempo que as requisições são processadas pelo mecanismo).

  • Avg: Latência média de inferência para todas as requisições.

  • TPXX: Valores percentis para a latência de inferência para todas as requisições.

Prefill Time

Latência do estágio Prefill para todas as requisições do service (tempo que o mecanismo processa os tokens de entrada da requisição).

  • Avg: Latência média de prefill para todas as requisições.

  • TPXX: Valores percentis para a latência de prefill para todas as requisições.

Decode Time

Latência do estágio Decode para todas as requisições do service (tempo que o mecanismo gera tokens de saída).

  • Avg: Latência média de decode para todas as requisições.

  • TPXX: Valores percentis para a latência de decode para todas as requisições.

Input Token Length

Número de tokens de entrada processados pelo service.

  • Avg: Comprimento médio de tokens de entrada para todas as requisições.

  • TPXX: Valores percentis para o comprimento de tokens de entrada para todas as requisições.

Output Token Length

Número de tokens de saída gerados pelo service.

  • Avg: Comprimento médio de tokens de saída para todas as requisições.

  • TPXX: Valores percentis para o comprimento de tokens de saída para todas as requisições.

Request Parameters(params_n & max_tokens)

Parâmetro N e parâmetro max_tokens para todas as requisições do service.

  • Params_n: Valor médio do parâmetro N para todas as requisições.

  • Params_max_tokens: Valor médio do parâmetro max_tokens para todas as requisições.

GPU KV Cache Usage

Utilização média do cache KV da GPU do service.

CPU KV Cache Usage

Utilização média do cache KV da CPU do service.

Prefix Cache Hit Rate

Taxa média de acerto no cache de prefixo para todas as requisições do service.

  • GPU: Taxa média de acerto no cache de prefixo da GPU para todas as requisições.

  • CPU: Taxa média de acerto no cache de prefixo da CPU para todas as requisições.

HTTP Requests by Endpoint

Número de requisições para o service, agrupadas por método de requisição, caminho e código de status da resposta.

HTTP Request Latency

Latência média para diferentes caminhos de requisição do service.

Speculative Decoding Throughput

Contagem de decodificação especulativa para o service. Média entre instâncias para services com múltiplas instâncias.

  • Drafts: Número de Tokens de Rascunho gerados.

  • Draft Tokens: Número de Tokens de Rascunho processados.

  • Accepted Tokens: Número de Tokens de Rascunho aceitos.

  • Emitted Tokens: Número de Tokens de Rascunho emitidos.

Speculative Decoding Efficiency

Desempenho da decodificação especulativa do service.

  • Draft Acceptance Rate: Proporção média de Tokens de Rascunho aceitos.

  • Efficiency: Eficiência média da decodificação especulativa.

Token Acceptance by Position

Número de Tokens de Rascunho aceitos em diferentes posições de geração para o service. Média entre instâncias para services com múltiplas instâncias.

FAQ

Painel de monitoramento de LLM não exibido

Problema: Após a implantação personalizada do EAS, a página de monitoramento mostra apenas os painéis Service e GPU. O monitoramento de LLM está ausente.

Causa: A configuração do service não possui a tag ServiceEngineType, que declara o tipo de mecanismo de inferência.

Nota

Apenas a tag ServiceEngineType afeta o monitoramento de LLM. Outros parâmetros de implantação do Model Gallery não têm impacto.

Solução: Atualize a configuração do service para adicionar a tag ServiceEngineType e defina seu valor com base no mecanismo de inferência utilizado (apenas vllm ou sglang são suportados). Por exemplo:

{
  "labels": {
    "ServiceEngineType": "vllm"
  }
}

P: Por que /metrics 200 aparece frequentemente nos logs?

Assim que a tag ServiceEngineType entra em vigor, o backend do EAS consulta o endpoint /metrics do framework de inferência a cada 10-15 segundos em todos os pods. Este endpoint retorna métricas em tempo real no formato Prometheus para o painel de monitoramento de LLM.

P: Como verificar a concorrência máxima no monitoramento?

O monitoramento do EAS não fornece uma métrica direta de "concorrência máxima". Determine a concorrência com base no tipo de service:

  • Services de inferência LLM (mecanismo vllm ou sglang): Alterne para o VLLM Monitoring Dashboard ou SGLang Monitoring Dashboard e verifique a métrica Running em Requests Status ou Requests Num. Esta métrica indica o número de requisições atualmente em execução na GPU, o que representa a concorrência em tempo real. Ao alterar o intervalo de tempo (por exemplo, selecionando Last 1 hours ou Last 6 hours), encontre o valor de pico da curva Running, que corresponde à concorrência máxima naquele período.

  • Services gerais: Estime a concorrência usando as métricas QPS (consultas por segundo) e RT (tempo de resposta) do painel de monitoramento de service. Com base na Lei de Little: Concorrência ≈ QPS × RT Médio (segundos). Por exemplo, se o QPS for 10 e o RT médio for 2 segundos, a concorrência é de aproximadamente 20. Aplique esta fórmula durante períodos de pico para estimar a concorrência máxima.

P: Qual é a diferença entre E2E Request Latency e RT?

A E2E Request Latency é fornecida pelo mecanismo de inferência LLM, enquanto o RT é fornecido pelo mecanismo EAS (easworker). Para cenários de LLM, recomenda-se a E2E Request Latency.

Referência

  • Após ativar service monitoring alerts, você receberá notificações de alerta quando o service acionar regras de alerta.

  • Visualize EAS Cloud Monitor events através do console CloudMonitor ou operação de api para realizar O&M, auditoria ou configurações de alerta para esses eventos.

  • Defina métricas de monitoramento personalizadas para Auto Scaling com base na lógica de negócios. Custom Monitoring and Scaling Metrics.