Skip to main content

System Requirements

Transcription:BatchReal-TimeDeployments:Virtual Appliance

The Speechmatics Virtual Appliance operates on a hypervisor host system. For this version of the Appliance, the following hypervisors are supported:

  • VMware®
  • VirtualBox
  • AWS EC2

For the Virtual Appliance to operate as required, the host must meet the requirements and have the resources available as defined below.

Virtual Appliance System Requirements

Real-Time Virtual Appliance

The minimum specifications for the Speechmatics Real-Time Virtual Appliance are:

  • 2 vCPU
  • 8GB RAM
  • Up to 38GB hard disk space

These specifications include requirements to run one worker using either our Standard or Enhanced model.

For each concurrent input stream using the Standard model the Appliance requires an additional 1 vCPU and at least 1.5GB RAM.

If you are using the Custom Dictionary (additional words) feature then each concurrent input stream that is configured to use it, will require up to 3GB RAM.

If you are using the Enhanced model, then each concurrent input stream that is configured to use it will require up to 3GB RAM. Up to 5GB may be required to use the Enhanced model in conjunction with other features like Custom Dictionary, without encountering performance issues.

Batch Virtual Appliance

The minimum specifications for the Speechmatics Batch Virtual Appliance are:

  • 2 vCPUs
  • 8GB RAM
  • Up to 44GB hard disk space

These specifications include requirements to run one worker using either our Standard or Enhanced model.

For each concurrent input stream using the Standard model the Appliance requires an additional 1 vCPU and at least 2GB RAM.

If you are using the Enhanced model, then each concurrent input stream that is configured to use it will require up to 3GB RAM. Up to 5GB may be required to use the Enhanced model in conjunction with other features like Custom Dictionary, without encountering performance issues.

Important Message on IOPS

Heavy usage of the Appliance at scale can sometimes result in very high usage of IO. If this is the case, we recommend increasing the maximum IOPs supported by your hardware to a value between 8,000-12,000. This is not necessary in all circumstances, but may result in better performance if you are running more than 10 concurrent workers. Increasing the IOPS also will result in an increase in cost for resource usage. If you use AWS, setting the volume type to io2 is also recommended in this scenario. How to change the maximum IOPS supported by your hardware is documented here for AWS, here for Microsoft Azure, and here for VMWare. You may need to do this if:

  • You are using close to, or the maximum number of workers supported by that Appliance size
  • The jobs being processed are all long files, and diarization is requested

Host Requirements

Standard Operating Point

The host machine requires a processor with following microarchitecture specification:

  • The host machine requires a processor with at least a Broadwell class microarchitecture or newer, with AVX2 instruction support
  • If you are using a hypervisor, you should check it is configured to allow VM access to the AVX2 instructions

Enhanced Operating Point

  • The host machine should have a processor with at least a Cascade Lake class microarchitecture or newer, with AVX512-VNNI instruction support. This will greatly improve transcription processing speed. Support for AVX2 instructions is required
  • If you are using a hypervisor, you should check it is configured to allow VM access to the AVX2 and AVX512-VNNI instructions
    • Examples of this among popular hosting providers include the Microsoft Azure DS_v4 class, and the Amazon M5n EC2 server class
    • If you are using the Enhanced model and running on VMWare, you will have to upgrade to hardware_version 18 to take advantage of the AVX512_VNNI flag. Please note this is only supported by ESXi version 7.0 onwards
    • If you are using VMWare and the Enhanced model, and encounter performance issues, we recommend allocating dedicated memory and/or processors to the Appliance. How to apply dedicated processors in VMWare is documented here, setting memory is documented here
  • If you encounter performance issues when running the Enhanced model, disabling hyperthreading when running the Enhanced model can also improve transcription speed. How to do so when running on Amazon Web Services is shown here, and for Microsoft Azure please see here

AVX Flags

The hardware you run the Appliance on must support Advanced Vector Extensions (AVX). To see what AVX flags are supported by the CPU of your host system, you can run the following query via the Management API of the Appliance:

curl -X GET "https://{HOSTAPPLIANCE}/v1/management/cpuinfo" -H "accept: application/json"

You will receive information about the host CPU. Supported AVX flags will be returned as flags in the Management API response. An example is below:

{
  "usage_percentage": 2.5,
  "architecture": "X86_64",
  "model_name": "Intel(R) Xeon(R) Silver 4116 CPU @ 2.10GHz",
  "cpus": "2",
  "vendor": "GenuineIntel",
  "hyperthreading": false,
  "flags": "3dnowprefetch abm adx aes apic arat arch_capabilities arch_perfmon avx avx2 avx512_vnni bmi1 bmi2 clflush cmov constant_tsc cpuid cpuid_fault cx16 cx8 de f16c flush_l1d fma fpu fsgsbase fxsr hypervisor ibpb ibrs invpcid invpcid_single lahf_lm lm mca mce md_clear mmx movbe msr mtrr nonstop_tsc nopl nx pae pat pcid pclmulqdq pdpe1gb pge pni popcnt pse pse36 pti rdrand rdseed rdtscp sep smap smep ss ssbd sse sse2 sse4_1 sse4_2 ssse3 stibp syscall tsc tsc_adjust tsc_deadline_timer tsc_reliable vme x2apic xsave xsaveopt xtopology"
}

See below for minimum Virtual Appliance VM (guest) Specifications; the host machine must have enough resources (processor, memory and storage) to run the hypervisor, the guest VMs you intend to host on it, plus any other processes you expect to run on it. Vendor guidelines should be followed for other host requirements and installation process.

For VMWare, the document Performance Best Practices for VMware vSphere® 6.0 contains a comprehensive overview of hardware considerations and recommendations on how to optimize your host platform. See https://www.vmware.com/support.html for up-to-date technical information on VMWare.

For VirtualBox, please consult the online documentation: https://www.virtualbox.org/wiki/Documentation

For Amazon EC2, the following link explains how to set up a VM using an Amazon S3 to store the OVA file: https://docs.aws.amazon.com/vm-import/latest/userguide/vmimport-image-import.html.