# tuned configuration # [main] summary=Optimize for CPU partitioning include=network-latency [variables] # User is responsible for updating variables.conf with variable content such as isolated_cores=X-Y include=/etc/tuned/cpu-partitioning-variables.conf isolated_cores_assert_check = \\${isolated_cores} # Make sure isolated_cores is defined before any of the variables that # use it (such as assert1) are defined, so that child profiles can set # isolated_cores directly in the profile (tuned.conf) isolated_cores = ${isolated_cores} # Fail if isolated_cores are not set assert1=${f:assertion_non_equal:isolated_cores are set:${isolated_cores}:${isolated_cores_assert_check}} # tmpdir tmpdir=${f:strip:${f:exec:mktemp:-d}} # Non-isolated cores cpumask including offline cores isolated_cores_expanded=${f:cpulist_unpack:${isolated_cores}} isolated_cpumask=${f:cpulist2hex:${isolated_cores_expanded}} not_isolated_cores_expanded=${f:cpulist_invert:${isolated_cores_expanded}} isolated_cores_online_expanded=${f:cpulist_online:${isolated_cores}} not_isolated_cores_online_expanded=${f:cpulist_online:${not_isolated_cores_expanded}} not_isolated_cpumask=${f:cpulist2hex:${not_isolated_cores_expanded}} # Make sure no_balance_cores is defined before # no_balance_cores_expanded is defined, so that child profiles can set # no_balance_cores directly in the profile (tuned.conf) no_balance_cores=${no_balance_cores} no_balance_cores_expanded=${f:cpulist_unpack:${no_balance_cores}} # Fail if isolated_cores contains CPUs which are not online assert2=${f:assertion:isolated_cores contains online CPU(s):${isolated_cores_expanded}:${isolated_cores_online_expanded}} cmd_isolcpus=${f:regex_search_ternary:${no_balance_cores}:\s*[0-9]: isolcpus=${no_balance_cores}:} [sysfs] /sys/bus/workqueue/devices/writeback/cpumask = ${not_isolated_cpumask} /sys/devices/virtual/workqueue/cpumask = ${not_isolated_cpumask} /sys/devices/virtual/workqueue/*/cpumask = ${not_isolated_cpumask} /sys/devices/system/machinecheck/machinecheck*/ignore_ce = 1 [systemd] cpu_affinity=${not_isolated_cores_expanded} [irqbalance] banned_cpus=${isolated_cores} [script] priority=5 script=${i:PROFILE_DIR}/script.sh [scheduler] isolated_cores=${isolated_cores} ps_blacklist=.*pmd.*;.*PMD.*;^DPDK;.*qemu-kvm.*;^contrail-vroute$;^lcore-slave-.*;^rte_mp_handle$;^rte_mp_async$;^eal-intr-thread$ [bootloader] priority=10 initrd_remove_dir=True initrd_dst_img=tuned-initrd.img initrd_add_dir=${tmpdir} cmdline_cpu_part=+nohz=on${cmd_isolcpus} nohz_full=${isolated_cores} rcu_nocbs=${isolated_cores} tuned.non_isolcpus=${not_isolated_cpumask} intel_pstate=disable nosoftlockup