Precificação para Code Engine

O IBM Cloud® Code Engine é diferente das tecnologias de computação em nuvem tradicionais, você paga apenas pelos recursos que usa. A memória e a vCPU que suas cargas de trabalho consomem são faturadas, bem como quaisquer chamadas HTTP recebidas. Se o seu app for escalado para zero ou se sua tarefa ou construção não estiver em execução, você não estará consumindo recursos e, portanto, não será cobrado.

O Code Engine inclui uma camada grátis para que você possa experimentar com o Code Engine antes de se comprometer.

As entidades a seguir serão faturadas:

Entidades como projetos não incorrem em encargos, mas servem como uma pasta para suas entidades. Entidades como segredos, ligações ou assinaturas não incorrem em encargos, mas contribuem para os limites gerais de seu projeto. Para obter mais informações, consulte Limites e cotas para o Code Engine.

Os custos que são fornecidos neste tópico são diretrizes e não representam custos reais. Eles representam um ponto de início para estimativas de custos incorridos em ambientes com uma configuração semelhante. Os custos reais podem variar por geografia. Para obter os preços mais atualizados, consulte Code Engine pricing.

Precificação de aplicativo

Ao implementar um aplicativo, os encargos se aplicam às solicitações de HTTP e aos recursos de CPU e memória que são consumidos por instâncias em execução do aplicativo. As chamadas HTTP recebidas são faturadas pelo número de chamadas HTTP recebidas por seu aplicativo. Por exemplo, se o seu app atender a 100 chamadas, 100 chamadas HTTP serão faturadas. O tráfego HTTP interno dentro de um projeto entre suas cargas de trabalho é excluído do total de chamadas HTTP faturáveis.

Por exemplo,

  • Se você criar um app Code Engine com memória de 2 GB (gigabyte) e 1 CPU virtual, com uma escala de instância mínima e máxima de 1, após uma hora, você será cobrado por 1 hora de vCPU e 2 GB/horas.
  • Se você, então, configurar sua escala de instância máxima para 2 e seu aplicativo receber solicitações suficientes para aumentar a capacidade para 2, (number of instances) x (number of virtual CPUs) = 2 vCPUs e 4 GB por hora serão faturadas.

Para combinações válidas de CPU e memória, consulte Combinações de memória e CPU suportadas.

Observe que o tempo que leva para extrair sua imagem ou para construí-la por meio do código-fonte é incluído no tempo de faturamento.

Precificação de tarefa

Ao executar uma tarefa, os encargos se aplicam para os recursos de CPU e de memória que são consumidos pela tarefa quando ela é executada. Você não é cobrado pela configuração de sua tarefa.

Por exemplo,

  • Se você criar uma tarefa para processar informações do IBM Cloud Object Storage com uma instância de tarefa e esta tarefa for executada por uma hora e usar 4 GB de memória, 1 hora de CPU e 4 GB/horas serão faturadas.
  • Se você dimensionar o mesmo trabalho para 4 instâncias e ele for concluído em 15 minutos, você será cobrado por 4 vCPU e 16 GB por .25 horas.

Para combinações válidas de CPU e memória, consulte Combinações de memória e CPU suportadas.

Observe que o tempo que leva para extrair sua imagem ou para construí-la por meio do código-fonte é incluído no tempo de faturamento.

Precificação de função

Quando você implanta uma função, as cobranças se aplicam às solicitações do site HTTP e aos recursos de CPU e memória que são consumidos pela execução de instâncias da função. As chamadas de entrada HTTP são cobradas pelo número de chamadas HTTP recebidas por sua função. Por exemplo,

  • Se sua função atender a 100 chamadas, você será cobrado por 100 chamadas HTTP. O tráfego interno HTTP em um projeto Code Engine entre suas cargas de trabalho é excluído do total de chamadas faturáveis HTTP.
  • Se você criar uma função Code Engine com 2 GB de memória e CPU virtual 0.5, após 600 chamadas (assumindo que cada uma requer 6 segundos para concluir o resultado), será cobrado por 0.5 vCPU horas e 2 GB horas.

Para combinações válidas de CPU e memória, consulte Combinações de memória e CPU suportadas.

O tempo necessário para extrair seu pacote de códigos ou para criá-lo a partir do código-fonte está incluído no tempo faturável.

Preço da frota

Quando você executa um fleet, as cobranças se aplicam apenas aos recursos de CPU, memória e, potencialmente, GPU, que são consumidos durante a execução do fleet.

Para cada frota executada, você pode optar por permitir que o site Code Engine implante nós de trabalho para atender aos requisitos de recursos da frota ou pode optar por implantar um perfil específico de nó de trabalho que você especificar. Analise as considerações de custo para ambas as opções abaixo.

Se você permitir que o Code Engine provisione automaticamente os nós de trabalho

Ao executar o seu fleet, você especifica a quantidade de recursos necessários para executar uma instância do seu código para concluir uma tarefa e o número máximo de instâncias a serem executadas simultaneamente. O site Code Engine implementa nós de trabalho de vários perfis possíveis para atender a esses requisitos de recursos com mais eficiência. Nesse cenário, o custo é baseado nos nós de trabalho implantados, mas pode ser aproximado usando os requisitos de recursos da instância que você especificar, o número de tarefas e o tempo médio de execução da instância. A fórmula para aproximar o custo de uma frota com base nesses valores é a seguinte:

[ (total cost of vCPU seconds) + (total cost of GB seconds) ] x (# of tasks) x (average runtime of each task in seconds)

Por exemplo, se uma instância do seu código requer 2 vCPU e 4 GB, você executa 100 tarefas e o tempo médio de execução de cada tarefa é de 0.5 segundos, a fórmula para aproximar o custo total é:

[ 2 x (cost of 1 vCPU second) + 4 x (cost of 1 GB second) ] x (100) x (0.5)

O custo total para executar a frota é o acúmulo de custos para cada nó de trabalho utilizado durante o tempo de execução da frota. Além disso, as instâncias malsucedidas podem ter seus tempos de execução aumentados por novas tentativas, o que pode aumentar o custo da frota. Você pode definir as configurações de nova tentativa ao criar a frota.

Code Engine não implementa automaticamente GPUs para frotas. Para implantar GPUs em sua frota, você deve optar por implantar um perfil de trabalhador específico ou uma família de GPUs.

Se você escolher um perfil de trabalhador específico

Se você optar por implantar um perfil ou família de nó de trabalho específico para a frota, somente esse tipo de nó de trabalho será implantado para a frota. O custo total para executar a frota é o custo acumulado para executar cada nó de trabalho implantado. Você também pode escolher perfis de trabalhadores com GPUs.

No momento, essa opção está disponível apenas na CLI.

Lembre-se de que essa pode não ser a maneira mais eficiente de administrar sua frota e pode resultar em um custo mais alto se os recursos de trabalho empregados excederem os recursos necessários.

Perfis de trabalhadores sem GPU

Se você não usa GPUs, o custo para executar um trabalhador pode ser aproximado com a seguinte fórmula:

[ (total cost of worker VPU seconds) + (total cost of worker GB seconds) ] x (average worker runtime in seconds)

Por exemplo, se você escolher um perfil de trabalhador de 16 vCPU e 64 GB, e sua frota for executada por 10 segundos, a fórmula para aproximar o custo total será:

[ 16 x (cost of 1 vCPU second) + 64 x (cost of 1 GB second) ] x (10)

O custo total para executar a frota é o custo acumulado da execução de cada nó de trabalho que é implantado. Por exemplo, se 2 nós de trabalho forem implantados, você multiplicaria as fórmulas acima por 2 para aproximar o custo total. Lembre-se de que o número de nós de trabalho depende dos recursos de instâncias necessários e do número máximo de instâncias simultâneas.

Perfis de trabalhadores de GPU

Cada trabalhador de GPU incorre em um custo adicional de segundos de GPU. Você pode aproximar o custo de execução de um trabalhador de GPU com a seguinte fórmula:

[ (total cost of GPU-seconds) + (Total cost of vCPU seconds) + (total cost of 1 GB second) ] x (average worker runtime in seconds)

Por exemplo, considere o perfil do nó de trabalho gx3-24x120x2l40s. Você pode usar os valores no perfil do nó de trabalho para aproximar o custo de uso do trabalhador. O perfil é composto por estas partes:

  • O primeiro valor gx3 é a categoria do nó de trabalho.
  • O segundo valor, 24, é o vCPU
  • O terceiro valor 120 é o GB de memória
  • O quarto valor 2 L40s, representa o número de núcleos de GPU do L40s.

O custo aproximado por segundo para usar um nó de trabalho com esse perfil é:

[ 24 x (cost of 1 vCPU second) + 120 x (cost of 1 GB second) + 2 x (cost of 1 L40 GPU-second) ] x (average worker runtime in seconds)

O custo total para executar a frota é o custo acumulado da execução de cada nó de trabalho que é implantado. Por exemplo, se 2 forem implantados trabalhadores de GPU, você multiplicaria as fórmulas acima por 2 para aproximar o custo total. Lembre-se de que o número de nós de trabalho depende dos recursos de instância necessários e do número máximo de instâncias simultâneas.

Precificação de construção

Ao construir uma imagem por meio do código-fonte para implementar como um app ou executar como uma tarefa, o tempo de uso de memória e vCPU que a construção consome é faturado. No entanto, esse encargo é separado dos encargos que podem incorrer ao usar a imagem resultante em um aplicativo ou execução da tarefa. Você não é cobrado pela configuração de sua construção.

As compilações são classificadas como small, medium, large, xlarge e xxlarge. O tamanho da construção define como os núcleos de CPU, a memória e o espaço em disco são designados à construção quando ela é executada. Uma construção menor é menos cara, mas geralmente também mais lenta, devido ao número menor de núcleos da CPU. Além disso, os requisitos de memória e disco de sua construção podem fazer com que a construção falhe se você escolher um tamanho muito pequeno. Para obter mais informações sobre o tamanho da construção, consulte Determine o tamanho da construção.

Observe que o tempo que leva para extrair o código-fonte e enviar por push a sua imagem construída é incluído no tempo faturável.