Performance

Prev Next

Industry-leading performance

Overview

  • Test suite of 20 business files ranging from 0.05 MB to 17 MB in size
  • Mean file size = 3.74 MB
  • File types include: PowerPoint, Video, Excel, Word, Image, PDF, Audio
  • The test was run against v2.6.1 of halo

AKS

Cluster configuration assumes specific memory and compute allocations for containers. Production performance will always depend on size and complexities of real world files. Configurations can be optimised to favour throughput or file processing speeds.

For these tests the following requests and limits were set on the pods.

Service Requested CPU Requested Memory CPU Limit Memory Limit
Engine 200m 500Mi (524 MB) 1 core 1Gi (1.07 GB)
Api 1500m 4Gi (4.29 GB) 1500m 4Gi (4.29 GB)

Small

Based on a single node (1 x DS5_v2) in a Kubernetes cluster comprising of:

  • 10 Engines
  • 16 virtual cores
  • 56 GB Memory
Throughput Files processed Data processed
Per Hour 26,500 96 GB
Per Day 635,000 2300 GB
Mean processing speed 136ms
API Success rate 99.999%

Medium

Based on 5 node (5 x DS4_v2) in a Kubernetes cluster comprising of:

  • 25 Engines
  • 8 virtual cores per node 40 total
  • 28 GB Memory per node 140 total
Throughput Files processed Data processed
Per Hour 54,800 200 GB
Per Day 1,300,000 4800 GB
Mean processing speed 65ms
API Success rate 99.999%

Large

Based on 5 nodes (5 x DS5_v2) in a Kubernetes cluster comprising of:

  • 50 Engines
  • 16 virtual cores per node 80 total
  • 56 GB Memory per node 280 total
Throughput Files processed Data processed
Per Hour 93,800 343 GB
Per Day 2,250,000 8230 GB
Mean processing speed 38ms
API Success rate 99.999%

OVA

For these tests the following requests and limits were set on the pods.

Service Requested CPU Requested Memory CPU Limit Memory Limit
Engine 1300m 3Gi (3.22 GB) 1300m 3Gi (3.22 GB)
Api 1 core 3Gi (3.22 GB) 1 core 3Gi (3.22 GB)

Small

Based on a small VM (F16s_v2) running the OVA. comprising of:

Throughput Files processed Data processed
Per Hour 9,150 33 GB
Per Day 220,000 800 GB
Mean processing speed 392ms
API Success rate 99.999%
  • 3 Engines
  • 16 virtual cores
  • 32 GB Memory

Large

Based on a large VM (F32s_v2) running the OVA.

Throughput Files processed Data processed
Per Hour 13,800 50 GB
Per Day 331,400 1200 GB
Mean processing speed 260ms
API Success rate 99.999%
  • 13 Engines
  • 32 virtual cores
  • 64 GB Memory

OVA vs Kubernetes Performance Differences

  • The OVA uses RKE with the Kubernetes control plane also using resources on the machine.
  • Multi node clusters need to use a file share for storing files. IO with this share will incur an overhead.
  • While it limits the scaleability, the OVA will inherently have faster network speeds between services due to all being on the same machine.