FreeCORE Documentation freecore.org

Configuring Tunables

Describes how to add or edit tunables on FreeCORE.

Warning

Be careful when adding or editing the default tunables. Changing the default tunables can make the system unusable.

FreeCORE allows you to add system tunables from the web interface. You can manually define tunables, or FreeCORE can run an autotuning script to attempt to optimize the system. Tunables are used to manage FreeCORE sysctls, loaders, and rc.conf options.

Important

Adding a sysctl, loader, or rc.conf option is an advanced feature. A sysctl immediately affects the kernel running the FreeCORE system, and a loader can adversely affect the FreeCORE boot process. Do not create a tunable on a production system before testing the ramifications of that change.

Configure Tunables

To configure a tunable, go to System > Tunables and click ADD.

SystemTunablesAdd
Figure 1: Adding a Tunable

Select the Type of tunable to add or modify. Enter the name of the loader, sysctl, or rc.conf variable to configure.

Next, enter the value to use for the loader, sysctl, or rc.conf.

If you wish to create the system tunable but not immediately enable it, unset the Enabled checkbox. Configured tunables remain in effect until deleted or Enabled is unset.

We recommend restarting the system after making sysctl changes. Some sysctls only take effect at system startup, and restarting the system guarantees that the setting values correspond with what the running system uses.

Autotuning

FreeCORE provides an autotune script that optimizes the system depending on the installed hardware.

Is this script available somewhere?

To see which checks are performed, find the autotune script in /usr/local/bin/autotune.

For example, if a pool exists on a system with limited RAM, the autotune script automatically adjusts some ZFS sysctl values to minimize memory starvation issues. Autotuning can introduce system performance issues. You must only use it as a temporary measure until you address the underlying hardware issue. Autotune always slows a RAM-starved system as it caps the ARC.

Warning

We do not recommend using the autotuning script if you maintain specific manual tunings; the script can override them.

Enabling autotune runs the autotuner script at boot. To run the script immediately, reboot the system.

Any tuned settings appear in System > Tunables.

Can I manually tune a setting controlled by the autotuner?

Deleting tunables created by the autotune only affects the current session. Autotune-set tunables regenerate every time the system boots. You cannot manually tune any setting the autotuner controlls.

To permanently change a value set by autotune, change the description of the tunable. For example, changing the description to "manual override" prevents autotune from reverting the tunable back to the autotune default value.