Sizing of The Computing Units for Speech Technologies
Best practices for good sizing of Phonexia technologies depend on a few facts:
-
Intense work with large data sets requires good performance and bandwidth between RAM and CPU. It all depends on the size of the files with technological model data, usually loaded into RAM and used intensively for computing operations
-
Always think only about the physical cores of CPU (HT, VT features can't help in performance)
-
Also seek for CPUs with a large L3 cache. And the better CPUs are those with a higher
l3_cache_size/#_of_physical_CPU_cores
ratio. We currently assume that CPUs from the current Intel Xeon Family in the 4th generation are the best. For small computation tasks, i7 family CPUs also have a reasonable price/performance ratio. -
Big challenge: correct SPE3/Speech platform technologies setup. If we assume that the whole machine is dedicated as a "speech computing unit" then, in general, we can calculate it as follows:
file: phxspe.properties
server.n_workers = <#\_of_core>
file: technologies.xml (no. of threads per technology, can be also set up by the
phxadmin
tool)
SQE: <#\_of_cores>/4
VAD: <#\_of*cores>/2
other technologies: <#\_of cores>
NUMBER OF CORES | RAM |
---|---|
8 cores | 32 GB |
16 cores | 64 GB |
Conclusion:
- The best computing performance can be expected from a CPU with:
l3_cache_size/#_of_physical_CPU_cores=>2.5 MB - Memory bandwidth & speed is more important than CPU base frequency.
- Intel fixes on TLB due to Meltdown and Spectre issues matters in performance.
Due to internal SPE3 requirements you must multiple the required number of licenses for the following technologies as follows:
LID_license_no=<no_of_planned_instances>\*2
SID_license_no=<no_of_planned_instances>\*3
In case you need more instances for hot-load testing of Phonexia technologies, please contact your Sales Representative from Phonexia Sales Department.