# System requirements
# Additional explanations
TrueConf Server has several peculiarities that should be considered when selecting equipment for a specific setup. Understanding these features will help you in choosing the right components.
Different types of connections create varying loads on the CPU and network. For example, when TrueConf client applications for desktops and mobiles are connected, the server mainly uses CPU resources for transmitting media streams over the network, instead of stream management, thanks to the SVC technology. There is no need to transcode streams (as in the case of recording for mixing the resulting video). We can assume that processing 200 Mbps of traffic requires one physical core of a typical server CPU with multi-threading (Hyper-Threading or SMT). This means that if TrueConf Server is installed on a physical server, 1 core is needed to process 200 Mbps, when the server is installed on a virtual machine (VM), 1 vCPU is required to process 100 Mbps.
In practice, all users rarely participate in conferences at the same time. This is why the video conferencing server engine does not impose limitations on the bandwidth of corporate or Internet networks. However, in our estimates, we recommend that you do not exceeding 3 Gbps for the machine running a single TrueConf Server, regardless of the number of participants, types of conferences, etc. This is the maximum value that has been observed and tested in practice. If your usage exceeds this value and some problems arise, please contact our technical support. You should also take into account the capabilities of the adapter installed on the machine running TrueConf Server.
TrueConf Server works equally well on Intel and AMD CPUs from approximately the same release year (family). It also supports multithreading technologies: Intel's Hyper-Threading and AMD's SMT.
CPUs released at different times (different generations) vary in per-core performance even if they have the same clock speed.
TrueConf Server works in the same way on Linux and Windows.
In practice, we recommend making sure that CPU load on the machine with TrueConf Server does not exceed 80%. If your use-case scenarios involve higher loads, you should either allocate more resources to the virtual machine (VM) or physically upgrade the hardware.
The software can be installed on both physical and virtual machines (including VPS), so the system requirements are the same.
# Detailed system requirements
Basic configuration | Recommended configuration | |||
---|---|---|---|---|
CPU |
Intel Core i3-8100 @ 3.6GHz
Intel Core i5-7400 @ 3.0GHz Intel Xeon E-2234 @ 3.6GHz Intel Xeon W-2223 @ 3.6GHz or any other CPU with at least 4 logical cores and PassMark® CPU mark 7000+ |
Intel Core i7-10700 @ 2.9GHz
AMD Ryzen 7 2700 @ 3.2GHz Intel Xeon E-2288G @ 3.7GHz Intel Xeon W-2245 @ 3.9GHz or any other CPU with at least 16 logical cores and PassMark® CPU mark 14000+ | ||
Typical configurations capabilities |
|
| ||
Plus | ||||
|
| |||
Other examples of typical configurations → | ||||
GPU-based hardware acceleration | With NVIDIA Quadro P2000 (or a comparable graphics card), you can add 20 individual layouts for SIP/H.323 participants without changing other hardware. | |||
Operating system |
Dedicated or virtual 64-bit operating system:
As part of configuration and setup services, we can deploy TrueConf Server on enterprise OS distributions that are not officially supported, such as Oracle Linux, Red Hat Enterprise Linux, Rocky Linux, etc. For more details, contact us in any convenient way. | |||
RAM | 16 GB | 32 GB+ | ||
When installing memory modules, follow the motherboard manufacturer’s guidelines on how to maximize performance (such recommendations are usually provided for server hardware). Otherwise, as a general rule, we recommend using all memory channels available on the motherboard, in other words, you need to install at least one RAM stick for each channel. | ||||
Hard drive | 20 GB of free space | |||
Network | Ethernet 1 Gbit/s | |||
Ports |
| |||
IP | A static IP address is required for the server to work properly | |||
Supported hypervisors | Microsoft® Hyper-V, Xen, KVM, Oracle VM VirtualBox, VMware Workstation and ESXi. |
# Optimizing swap file usage
General recommendations for swap size on Windows and Linux:
Installed RAM | Minimum swap amount | Recommended swap amount without hibernation | Recommended swap amount with hibernation |
---|---|---|---|
2-8 Gb | 1-2 Gb | 1 x RAM | 1.5 x RAM |
8-64 Gb | 4-8 Gb | 0.5 x RAM | 1 x RAM |
64-256 Gb | 4-16 Gb | 4-16 Gb | 1 x RAM |
>256 Gb | 4-32 Gb | 4-16 Gb | 1 x RAM |
If swap files are heavily used on a virtual or physical machine where TrueConf Server for Linux is installed, and there is plenty of available RAM, you can configure the OS settings for using swap files. As a general rule, Linux-based operating systems use swap files in the following way:
There is no single parameter for using swap depending on the percentage of RAM which is being used.
One should not rely on the mistaken belief that having a lot of RAM (e.g., 128 GB) means that you can do without swap: this file is an important part of memory management logic in the OS.
The use of swap is determined by the
vm.swappiness
parameter in the system file/etc/sysctl.conf
. This parameter essentially represents the ratio between anonymous and physical memory pages. Physical pages correspond to files and their parts in the file system (typically, the code of running programs). Anonymous pages are dynamically created data (for example, variable values).Reduction of
vm.swappiness
prioritizes anonymous memory over physical memory which decreases the use of swap.By default, the value
vm.swappiness = 60
works well on standard machines (with 8-16 GB of memory). However, machines, where TrueConf Server is installed, have more RAM, so it makes sense to choose a different value.
To learn more about swap in Linux, refer to the Red Hat website.
So, to reduce the use of swap, take these steps:
- Open the
/etc/sysctl.conf
file with the administrator account in any text editor, for example, by executing the following command in the terminal:
sudo nano /etc/sysctl.conf
2. If the file already contains a line like vm.swappiness = 60
, change the value 60 to a smaller number, for example 10. If this value is not included in the file, just add a new line vm.swappiness = 10
.
Track the results under different loads (e.g., with a different number of conferences, etc.) and adjust the value, reducing it from 10 to 1. Do not set it to 0 under any circumstances. The final value may vary depending on the amount of RAM and the load on TrueConf Server during your test cases.