As instâncias básicas de cpu geralmente são suficientes para cenários de computação de uso geral no function compute, como serviços web e processamento de dados. No entanto, para cenários que exigem computação paralela em grande escala ou aprendizado profundo (deep learning), como processamento de áudio e vídeo, inferência de inteligência artificial (IA) e edição de imagens, as instâncias aceleradas por GPU podem melhorar significativamente a eficiência de computação.
Para instâncias de GPU, o function compute oferece três tipos de instância: instâncias elásticas, instâncias provisionadas e instâncias provisionadas + elásticas (modo híbrido). selecione o tipo e as especificações de instância que melhor atendem aos requisitos do seu negócio para garantir operações estáveis, maximizando a utilização de recursos e o desempenho.
Seleção do tipo de instância
As funções de cpu suportam apenas instâncias elásticas. As funções de GPU suportam três tipos de instância, entre os quais você pode alternar a qualquer momento sem interrupção do service.
Guia de decisão
Use as perguntas a seguir para encontrar o tipo de instância adequado:
Sua carga de trabalho é sensível à latência e interativa? Por exemplo, um chatbot em tempo real ou uma api de geração de imagens. Em caso afirmativo, use instâncias provisionadas para eliminar inicializações a frio (cold starts) e garantir tempos de resposta.
Seu tráfego segue uma linha de base previsível com picos ocasionais? Em caso afirmativo, use o modo misto (instâncias provisionadas + elásticas) para manter uma capacidade de linha de base estável enquanto absorve picos de tráfego.
Seu tráfego é variável, instável ou de baixa frequência? Em caso afirmativo, use instâncias elásticas e pague apenas pelo uso ativo.
Comparação de tipos de instância
|
Instância elástica |
Instância provisionada |
Instância provisionada + elástica (modo misto) |
|
|
Aplica-se a |
Funções de cpu (única opção); funções de GPU |
Apenas funções de GPU |
Apenas funções de GPU |
|
Inicialização a frio |
Sim, se o mínimo de instâncias = 0. defina o mínimo de instâncias como 1 ou mais para pré-alocar recursos e reduzir inicializações a frio. |
Nenhuma. Todas as solicitações dentro da capacidade alocada recebem uma resposta em tempo real. |
Parcial. As solicitações dentro do pool de recursos dedicados não têm inicialização a frio; as instâncias elásticas de scale-out têm. |
|
Modelo de faturamento |
Pagamento conforme o uso |
Assinatura |
Assinatura (parte provisionada) + pagamento conforme o uso (parte elástica) |
|
Mais adequado para |
Tráfego variável ou de baixa frequência; cargas de trabalho sensíveis a custos |
Cargas de trabalho sensíveis à latência ou com tráfego estável |
Cargas de trabalho com uma linha de base previsível e picos de tráfego imprevisíveis |
Instância elástica
As instâncias elásticas dimensionam automaticamente com o volume de solicitações e são liberadas quando ociosas. defina o número mínimo de instâncias como 0 proporciona um modelo puro de pagamento conforme o uso, em que você paga apenas pelo uso ativo.
Comportamento de inicialização a frio: as inicializações a frio ocorrem quando as instâncias dimensionam a partir de zero. Para reduzir a latência de inicialização a frio, defina o número mínimo de instâncias como 1 ou mais. Isso pré-aloca recursos elásticos para que as instâncias estejam prontas para lidar rapidamente com as solicitações recebidas.
Faturamento: os custos incluem cobranças por instâncias nos estados ativo e de Shallow Hibernation. Na hibernação superficial (Shallow Hibernation), os recursos de vCPU não são cobrados e os recursos de GPU são faturados a um quinto da taxa ativa. Se você defina o número mínimo de instâncias como 1 ou mais, ative a hibernação superficial para reduzir os custos de ociosidade.
Use instâncias elásticas quando:
Seu tráfego for variável, instável ou de baixa frequência
Você quiser pagar apenas pelo uso real
Sua carga de trabalho puder tolerar latência ocasional de inicialização a frio (ou você a mitigar com uma contagem mínima de instâncias)
Instância provisionada
As instâncias provisionadas aplicam-se apenas a funções de GPU. Adquira um dedicated resource pool (formerly resident resource pool) antecipadamente e, em seguida, aloque um número e um tipo específicos de instâncias para a sua função. Isso elimina as inicializações a frio dentro da sua capacidade alocada e oferece custos fixos e previsíveis.
Comportamento de inicialização a frio: nenhum. Todas as solicitações dentro da sua capacidade alocada recebem uma resposta em tempo real. Máximo de solicitações simultâneas = (Number of allocated Provisioned Instances) × (Instance concurrency). As solicitações que excedem esse limite são limitadas (throttled).
Faturamento: a taxa total de assinatura de todos os pools de recursos dedicados adquiridos .
As instâncias provisionadas estão disponíveis apenas para funções de GPU nas séries Ada, Ada.2, Ada.3, Hopper ou Xpu.1.
Use instâncias provisionadas quando:
Sua carga de trabalho for sensível à latência e interativa (por exemplo, um chatbot em tempo real ou uma api de geração de imagens)
Seu tráfego for constante e previsível
Você precisar de capacidade garantida e tempos de resposta consistentes
Instâncias provisionadas + elásticas (modo misto)
O modo misto aplica-se apenas a funções de GPU. Ele combina instâncias provisionadas e elásticas: o pool de recursos dedicados lida primeiro com o tráfego em estado estacionário, e as instâncias elásticas dimensionam automaticamente quando as solicitações excedem a capacidade do pool de recursos dedicados. Isso oferece uma linha de base garantida com a flexibilidade para absorver picos repentinos de tráfego.
Comportamento de inicialização a frio: parcial. As solicitações tratadas dentro do pool de recursos dedicados não têm inicialização a frio. As solicitações que acionam o dimensionamento automático para novas instâncias elásticas passam por uma inicialização a frio.
Faturamento: a parte provisionada é faturada em relação à sua cota adquirida de pool de recursos dedicados. As instâncias elásticas iniciadas além da cota do pool de recursos dedicados são faturadas com base no pagamento conforme o uso, às mesmas taxas das instâncias elásticas ativas e em hibernação superficial.
Use o modo misto quando:
Seu tráfego tiver uma linha de base previsível, mas com picos ocasionais
Você quiser um desempenho estável para carga normal com a capacidade de lidar com tráfego em pico
Você precisar de um equilíbrio entre a previsibilidade de custos e a flexibilidade de dimensionamento
Especificações de instâncias
-
Instâncias de cpu
vCPU (núcleo)
Tamanho da memória (MB)
Tamanho máximo do pacote de código (GB)
Duração máxima de execução da função (s)
Tamanho máximo do disco (GB)
Largura de banda máxima (Gbps)
0,05 a 16
Nota: O valor deve ser um múltiplo de 0,05.
128 a 32768
Nota: O valor deve ser um múltiplo de 64.
10
86400
10
Valores válidos:
512 MB. Este é o valor padrão.
10 GB.
5
NotaA proporção de vCPUs para o tamanho da memória (em GB) deve estar entre 1:1 e 1:4.
-
Especificações de hardware de instâncias de GPU
Tipo de instância
Memória da GPU
Poder de computação FP16
Poder de computação FP32
Máximo de placas por instância
fc.gpu.tesla.1
16 GB
65 TFLOPS
8 TFLOPS
4 placas
fc.gpu.ampere.1
24 GB
125 TFLOPS
31,2 TFLOPS
8 placas
fc.gpu.ada.1
48 GB
119 TFLOPS
60 TFLOPS
fc.gpu.ada.2
24 GB
166 TFLOPS
83 TFLOPS
fc.gpu.ada.3
48 GB
148 TFLOPS
73,5 TFLOPS
fc.gpu.hopper.1
96 GB
148 TFLOPS
44 TFLOPS
fc.gpu.hopper.2
141 GB
148 TFLOPS
44 TFLOPS
fc.gpu.blackwell.1
32 GB
104,8 TFLOPS
104,8 TFLOPS
fc.gpu.xpu.1
96 GB
123 TFLOPS
61,5 TFLOPS
16 placas
-
Regras de configuração de vCPU e memória para instâncias de GPU
NotaFórmula para recursos de múltiplas placas: Total de vCPUs = vCPUs por placa × Número de placas, e Memória total = Memória por placa × Número de placas.
Tipo de instância
vCPU (por placa)
Faixa de memória por placa
Incremento de memória
fc.gpu.tesla.1
4 núcleos
4 a 16 GB (4.096 a 16.384 MB)
4 GB (4.096 MB)
8 núcleos
8 a 32 GB (8.192 a 32.768 MB)
16 núcleos
16 a 64 GB (16.384 a 65.536 MB)
fc.gpu.ampere.1
8 núcleos
8 a 32 GB (8.192 a 32.768 MB)
16 núcleos
16 a 32 GB (16.384 a 32.768 MB)
fc.gpu.ada.1
fc.gpu.ada.2
fc.gpu.ada.3
4 núcleos
16 a 32 GB (16.384 a 32.768 MB)
8 núcleos
32 a 64 GB (32.768 a 65.536 MB)
16 núcleos
64 a 120 GB (65.536 a 122.880 MB)
fc.gpu.hopper.1
4 núcleos
16 a 32 GB (16.384 a 32.768 MB)
8 núcleos
32 a 64 GB (32.768 a 65.536 MB)
16 núcleos
64 a 96 GB (65.536 a 98.304 MB)
24 núcleos
96 a 120 GB (98.304 a 122.880 MB)
fc.gpu.hopper.2
4 núcleos
16 a 32 GB (16.384 a 32.768 MB)
8 núcleos
32 a 64 GB (32.768 a 65.536 MB)
16 núcleos
64 a 128 GB (65.536 a 131.072 MB)
24 núcleos
96 a 248 GB (98.304 a 253.952 MB)
fc.gpu.blackwell.1
4 núcleos
16 a 32 GB (16.384 a 32.768 MB)
8 núcleos
32 a 64 GB (32.768 a 65.536 MB)
16 núcleos
64 a 120 GB (65.536 a 122.880 MB)
24 núcleos
96 a 184 GB (98.304 a 188.416 MB)
fc.gpu.xpu.1
4 núcleos
16 a 48 GB (16.384 a 49.152 MB)
8 núcleos
32 a 96 GB (32.768 a 98.304 MB)
12 núcleos
48 a 120 GB (49.152 a 122.880 MB)
-
Instâncias aceleradas por GPU também suportam as seguintes especificações de recursos.
Tamanho da imagem (GB)
Duração máxima de execução da função (s)
Tamanho do disco
Largura de banda máxima (Gbps)
ACR Enterprise Edition (Standard Edition): 15
ACR Enterprise Edition (Premium Edition): 15
ACR Enterprise Edition (Basic Edition): 15
ACR Personal Edition (Free): 15
86400
512 MB
10 GB a 200 GB, em incrementos de 10 GB
5
Notadefina o tipo de instância como g1 equivale a defini-lo como fc.gpu.tesla.1.
As instâncias aceleradas por GPU da série Tesla são suportadas nas seguintes regiões: China (Hangzhou), China (Shanghai), China (Beijing), China (Zhangjiakou), China (Shenzhen), Japan (Tokyo), US (Virginia) e Singapore.
As instâncias aceleradas por GPU da série Ada são suportadas nas seguintes regiões: China (Beijing), China (Hangzhou), China (Shanghai), China (Shenzhen), Singapore e US (Virginia).
Relação entre as especificações de instância de GPU e a simultaneidade de instâncias
Uma GPU Ada.1 possui 48 GB de memória, e uma GPU da série Tesla possui 16 GB de memória. O function compute aloca toda a memória de uma placa de GPU para um único contêiner de GPU. Como a cota padrão de placas de GPU é de no máximo 30 por região, até 30 contêineres de GPU podem ser execute simultaneamente nessa região.
Se a simultaneidade de instância de uma função de GPU for 1, a função poderá processar até 30 solicitações de inferência simultaneamente em uma região.
Se a simultaneidade de instância de uma função de GPU for 5, a função poderá processar até 150 solicitações de inferência simultaneamente em uma região.
Simultaneidade de instância única
Para melhorar a utilização de recursos, configure a simultaneidade de instância única com base nos requisitos de recursos da sua aplicação. Nessa configuração, várias tarefas podem ser execute em uma única instância e compartilhar recursos de cpu e memória, o que melhora a utilização geral dos recursos. Para mais informações, consulte Configure instance concurrency.
Duração de execução para instância única, simultaneidade única
Quando uma instância execute uma única solicitação, a duração da execução é medida desde o momento em que a solicitação chega à instância até a conclusão da execução da solicitação.
Duração de execução para instância única, múltiplas simultaneidades
Quando uma instância execute várias solicitações simultaneamente, a duração da execução é medida desde o momento em que a primeira solicitação chega à instância até o momento em que a última solicitação é concluída. Essa reutilização de recursos ajuda a salve custos.
Referências
Para mais informações sobre os métodos de faturamento e itens faturáveis do function compute, consulte Billing overview.
Ao usar uma api para crie uma função, use o parâmetro
instanceTypepara especifique o tipo de instância. Para mais informações, consulte CreateFunction.Para saber como especifique o tipo e as especificações da instância no console, consulte Function creation.