Skip to content
Alexander K edited this page May 6, 2018 · 22 revisions

Common requirements

  • x86-64 Haswell or later CPU. Tempesta FW requires SSE 4.2 and 2MB huge pages enabled. AVX2 significantly improves performance of strings processing, but this is not the mandatory. Also large integer arithmetic improves TLS performance. Check sse4_2, pse, avx2, bmi, and adx flags respectively in your /proc/cpuinfo;
  • At least 2GB RAM;
  • RSS capable network adapter;
  • Filesystem with fallocate(2) system call (e.g. ext4, btrfs or xfs);
  • Linux Kernel 4.9.35 with TempestaFW patches. Required patches are small and can be found in TempestaFW Github repository. Alternatively kernel sources with the patches applied are available in the separate repository.

Currently Debian Stretch is the only officially supported GNU/Linux distribution.

Kernel Configuration

Tempesta requires that the following Linux kernel configuration options are switched on:

  • CONFIG_SLUB
  • CONFIG_SECURITY
  • CONFIG_SECURITY_NETWORK
  • CONFIG_SECURITY_TEMPESTA
  • CONFIG_DEFAULT_SECURITY_TEMPESTA
  • CONFIG_DEFAULT_SECURITY="tempesta"

We suggest that CONFIG_PREEMPT_NONE is used for better throughput. However, please use CONFIG_PREEMPT_VOLUNTARY for debugging since this mode causes additional stress to synchronization of several algorithms. Also note that CONFIG_PREEMPT is not supported at all.

Prerequisite packages

  • Perl Template-Toolkit You can find the package as perl-Template-Toolkit in Fedora/CentOS or libtemplate-perl in Debian-based system.
Clone this wiki locally