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.