Compute#

Overview#

In Roboto, compute resources are used to ingest and post-process files using actions. Whenever an action is invoked, it runs in an isolated environment with configurable CPU and memory.

In the Free and Premium tiers, compute is provisioned by our hosted platform. Roboto meters compute usage using a system of compute credits, which are used for billing and usage tracking.

Compute credits#

Compute credits are a standardized unit for measuring the computational power consumed by actions. This system allows Roboto to normalize different compute configurations into a single, consistent value.

One compute credit is equivalent to one hour of compute on the following reference specification:

  • 4 vCPUs (hyperthreads or dedicated cores, 2.5–3 GHz)

  • 8 GiB RAM

  • 20 GiB SSD storage

  • No dedicated GPU

To calculate how many compute credits an action invocation will consume, Roboto uses the following formula:

\(Credits = (0.225 \times vCPUs + 0.025 \times RAM + 0.015 \times SSD) \times runtimeHours\)

  • vCPUs is the number of virtual CPUs assigned

  • RAM is the memory (in GiB)

  • SSD is the allocated SSD storage (in GiB)

  • runtimeHours is the total duration the action ran, in hours

These coefficients approximate the relative cost of compute to Roboto and may change over time based on underlying cloud provider pricing and platform optimizations.

Representative profiles#

The table below outlines representative compute profiles that may be used by actions. See the subsequent table for an exhaustive list of options.

Scenario

Credits per Hour

vCPUs

RAM (GiB)

SSD (GiB)

Minimum Possible Spec

0.13

0.25 *

0.5

20

Low Spec

0.30

1

4

20

Standard (Benchmark)

1.00

4

8

20

High Spec

2.36

8

32

100

Maximum Possible Spec

6.16

16

128

200

* Fractional vCPU represents time-share of cycles on a single vCPU hyperthread or core

Action compute options#

The table below outlines the full set of compute options that may be allocated to an action invocation.

These may be selected when invoking an action in the Roboto platform, or may be specified in an action.json file.

vCPUs

Memory Options (MiB)

256 (0.25 vCPU)

512 (0.5 GiB), 1024, 2048 (2 GiB)

512 (0.5 vCPU)

1024 (1 GiB), 2048, 3072, 4096, 5120 (5 GiB)

1024 (1 vCPU)

2048 (2 GiB), 3072, 4096, 5120, 6144, 7168, 8192, 9216 (9 GiB)

2048 (2 vCPU)

4096 (4 GiB), 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408 (17 GiB)

4096 (4 vCPU)

8192 (8 GiB), 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696, 30720, 31744 (31 GiB)

8192 (8 vCPU)

16384 (16 GiB), 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344, 61440, 65536 (64 GiB)

16384 (16 vCPU)

32768 (32 GiB), 40960, 49152, 57344, 65536, 73728, 81920, 90112, 98304, 106496, 114688, 122880, 131072 (128 GiB)