Was this page helpful?
Caution
You're viewing documentation for a previous version. Switch to the latest stable version.
Customizing CPUSET¶
CPUSET in the /etc/scylla.d/cpuset.conf file is automatically configured by running the scylla_setup
(or scylla_cpuset_setup) script. If you want to customize CPUSET, you must modify both the cpuset.conf
and perftune.yaml files.
Note that the scylla-server service will generate /etc/scylla.d/perftune.yaml only if the file doesn’t exist.
Examples¶
Here are a few examples of possible configurations. In the examples, eth5 is used as a NIC name and /var/lib/scylla as a data directory.
Example 1¶
16 CPUs system.
You want to run ScyllaDB on CPUs 3, 4, 5, and have IRQs handled on the same CPUs, while allowing other apps on the same machine to benefit from XFS/RFS/RPS from
eth5.
cpuset.conf:
CPUSET="--cpuset 3,4,5 "
perftune.yaml:
cpu_mask: '0xffff'
dir:
- /var/lib/scylla
irq_cpu_mask: '0x38'
nic:
- eth5
tune:
- net
- disks
Example 2¶
16 CPUs system.
You want to run ScyllaDB on CPUs 3, 4, 5, and have IRQs handled on the same CPUs, and ScyllaDB is going to be the only application that will use
eth5.
cpuset.conf:
CPUSET="--cpuset 3,4,5 "
perftune.yaml:
cpu_mask: '0x38'
dir:
- /var/lib/scylla
irq_cpu_mask: '0x38'
nic:
- eth5
tune:
- net
- disks
Example 3¶
16 CPUs system.
You want to run ScyllaDB on CPUs 3, 4, 5, and IRQs handled on CPUs 6,7,8, while allowing other apps on the same machine to benefit from XFS/RFS/RPS from
eth5.
cpuset.conf:
CPUSET="--cpuset 3,4,5 "
perftune.yaml:
cpu_mask: '0xffff'
dir:
- /var/lib/scylla
irq_cpu_mask: '0x1c0'
nic:
- eth5
tune:
- net
- disks