Configuration/snakeoil: Difference between revisions

From Snakeoil OS Reference
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
{{DISPLAYTITLE: Snakeoil}}{{TopicConfiguration|float:right;}}
{{DISPLAYTITLE: Snakeoil}}{{TopicConfiguration|float:right;}}This tab contains a lot of experimental (unstable) features yet to make it to the public domain. Only people with a activation code can unlock this functionality (more commonly known as beta testers).
{{ManualNavigation|[[Configuration]]
 
These features can be highly unstable so please try them at your own risk.
[[File:Snakeoil.png|center|thumb|900x900px|Snakeoil]]
 
== Process Priority ==
How various programs are executed in Linux to give you that multi-tasking ability is determined by something call a process scheduler. How it all works is beyond the scope of this manual, because it largely dependent on the technique (plus other stuffs). Suffice to say if you are using a cooperative scheduler then you can use this option to fine-tune how often a process gets "looked at" in the queue. Snakeoil kernels with RT patches are all preemptive so this option is probably useless.
[[File:Snakeoil - process priority.png|center|thumb|945x945px|Snakeoil - process priority]]
Click on the "''Add Process''" button to add a new process. In the ''process name'' field, enter the name (or part of) of the process you wish to reassign a new priority. The ''prio'' field is the new priority level you want this process to be set to (this field is numeric only, with 1 being lowest priority, and 99 being real-time). Note that we only adjust the priority level here and '''not the scheduler policy'''. The later is really reserved for advanced users and not for general use.
 
== Kernel Tweaks ==
Kernel tweaks are parameters you can specify for the boot kernel. Changing these settings will alter the behaviour of the booted kernel, and that in turn can influence the sound. These settings are experimental and the system may fail to boot, or become unstable. Please try these settings at your own risk.
[[File:Snakeoil - Kernel Tweaks.png|center|thumb|953x953px|Snakeoil - Kernel Tweaks]]
 
=== Boot Kernel ===
You can upload kernels to your Snakeoil machine. The last uploaded kernel is always set as the default boot kernel, use this setting to override that behaviour and use a previous kernel as your default.
 
=== Clocksource ===
The purpose of the clock source is to provide a timeline for the system that tells you where you are in time. For example issuing the command 'date' on a Linux system will eventually read the clock source to determine exactly what time it is. The clock source shall have as high resolution as possible, and the frequency shall be as stable and correct as possible as compared to a real-world wall clock. It should not move unpredictably back and forth in time or miss a few cycles here and there.
 
Some common clock sources are:
 
* tsc - Time Stamp Counter
* hpet - High Precision Event Counter (Only if enabled in BIOS)
* acpi_pm
 
=== Boot options ===
These are additional command line options for the kernel. Please note these options while well tested in Linux may not be compatible with your hardware configuration. If the kernel fails to boot you'd need to manually modify the boot up options from the console to recover.
{| class="wikitable"
!Options
!Description
|-
|none
|No special boot parameters
|-
|acpi=noirq
|Do not use ACPI for IRQ routing or for PCI scanning
|-
|acpi=ht
|Disable all ACPI functions, except what is required for hyper threading
|-
|noapic
|Tells the kernel to not make use of any IOAPICs that may be present in the system.
|-
|pnpacpi
|Not sure what this does - does it turns on Plug N Play ACPI, or off?
|-
|nolapic
|Do not enable or use the local APIC.
|}
 
== Music Software ==
Use this to install/uninstall software easily. Uninstall anything you don't need to reduce clutter, or install new players as they come.
[[File:Snakeoil - music software.png|center|thumb|479x479px|Snakeoil - music software]]
 
== System Services ==
You have the choice to disable these services. Doing so will increase RAM, which ''may'' in turn yield benefits (or not).
[[File:Snakeoil-services.png|center|thumb|424x424px|Snakeoil - System Services]]
 
* '''SMB Windows File Sharing''': This is the file sharing protocol you used for copying files to your Snakeoil machine over the network. Turn this service off when you don't use this feature. Turn it on again when you need to copy more files over.
* '''OpenSSH''': For remote access to your computer via putty
* '''Console''': For local access to your computer
 
You will not be able to gain access to your Linux OS when you disable both SSH and TTY. The only way is remote log in again is to enable either one from the web interface. You will be locked out of the system if you disable these two services and loose network connectivity.
 
== Ubuntu Packages ==
You can install additional Ubuntu packages to expand the capabilities of your Snakeoil OS.
<br />
{| class="wikitable"
!Ubuntu Package
!Description
|-
|cpuset
|Install this package to and you can assign individual programs are run on your multi-CPU computer. See next section on cpuset for more information.
|-
|exFAT filesystem
|exFAT (Extended File Allocation Table) is a Microsoft file system introduced in 2006 optimized for flash memory such as USB flash drives and SD cards. Install this package and you can mount any media formatted with this format.
|}
 
== cpuset ==
From Wikipedia.<blockquote></blockquote>Snakeoil OS runs a very simplistic but effective model for processor affinity:
 
# Do you want to restrict your music programs to a CPU group?
#* Yes: Tick the box that says ' Isolate music player to (user), leaving everything else in (System)'
#* No.: Untick the box that says ' Isolate music player to (user), leaving everything else in (System)'
# If you chose Yes above, you now get to  decide which CPUs run all your music applications in one group, and everything else in another group. While this does not offer much flexibility, in most cases you should hear an improvement in audio quality.
 
Make your changes, and do not forget to hit the 'Save' button at the bottom of the page for all your changes to take effect.{{ManualNavigation|[[Configuration]]
|[[configuration/system|System]]}}
|[[configuration/system|System]]}}

Revision as of 17:39, 19 August 2019

This tab contains a lot of experimental (unstable) features yet to make it to the public domain. Only people with a activation code can unlock this functionality (more commonly known as beta testers).

These features can be highly unstable so please try them at your own risk.

Snakeoil

Process Priority

How various programs are executed in Linux to give you that multi-tasking ability is determined by something call a process scheduler. How it all works is beyond the scope of this manual, because it largely dependent on the technique (plus other stuffs). Suffice to say if you are using a cooperative scheduler then you can use this option to fine-tune how often a process gets "looked at" in the queue. Snakeoil kernels with RT patches are all preemptive so this option is probably useless.

Snakeoil - process priority

Click on the "Add Process" button to add a new process. In the process name field, enter the name (or part of) of the process you wish to reassign a new priority. The prio field is the new priority level you want this process to be set to (this field is numeric only, with 1 being lowest priority, and 99 being real-time). Note that we only adjust the priority level here and not the scheduler policy. The later is really reserved for advanced users and not for general use.

Kernel Tweaks

Kernel tweaks are parameters you can specify for the boot kernel. Changing these settings will alter the behaviour of the booted kernel, and that in turn can influence the sound. These settings are experimental and the system may fail to boot, or become unstable. Please try these settings at your own risk.

Snakeoil - Kernel Tweaks

Boot Kernel

You can upload kernels to your Snakeoil machine. The last uploaded kernel is always set as the default boot kernel, use this setting to override that behaviour and use a previous kernel as your default.

Clocksource

The purpose of the clock source is to provide a timeline for the system that tells you where you are in time. For example issuing the command 'date' on a Linux system will eventually read the clock source to determine exactly what time it is. The clock source shall have as high resolution as possible, and the frequency shall be as stable and correct as possible as compared to a real-world wall clock. It should not move unpredictably back and forth in time or miss a few cycles here and there.

Some common clock sources are:

  • tsc - Time Stamp Counter
  • hpet - High Precision Event Counter (Only if enabled in BIOS)
  • acpi_pm

Boot options

These are additional command line options for the kernel. Please note these options while well tested in Linux may not be compatible with your hardware configuration. If the kernel fails to boot you'd need to manually modify the boot up options from the console to recover.

Options Description
none No special boot parameters
acpi=noirq Do not use ACPI for IRQ routing or for PCI scanning
acpi=ht Disable all ACPI functions, except what is required for hyper threading
noapic Tells the kernel to not make use of any IOAPICs that may be present in the system.
pnpacpi Not sure what this does - does it turns on Plug N Play ACPI, or off?
nolapic Do not enable or use the local APIC.

Music Software

Use this to install/uninstall software easily. Uninstall anything you don't need to reduce clutter, or install new players as they come.

Snakeoil - music software

System Services

You have the choice to disable these services. Doing so will increase RAM, which may in turn yield benefits (or not).

Snakeoil - System Services
  • SMB Windows File Sharing: This is the file sharing protocol you used for copying files to your Snakeoil machine over the network. Turn this service off when you don't use this feature. Turn it on again when you need to copy more files over.
  • OpenSSH: For remote access to your computer via putty
  • Console: For local access to your computer

You will not be able to gain access to your Linux OS when you disable both SSH and TTY. The only way is remote log in again is to enable either one from the web interface. You will be locked out of the system if you disable these two services and loose network connectivity.

Ubuntu Packages

You can install additional Ubuntu packages to expand the capabilities of your Snakeoil OS.

Ubuntu Package Description
cpuset Install this package to and you can assign individual programs are run on your multi-CPU computer. See next section on cpuset for more information.
exFAT filesystem exFAT (Extended File Allocation Table) is a Microsoft file system introduced in 2006 optimized for flash memory such as USB flash drives and SD cards. Install this package and you can mount any media formatted with this format.

cpuset

From Wikipedia.

Snakeoil OS runs a very simplistic but effective model for processor affinity:

  1. Do you want to restrict your music programs to a CPU group?
    • Yes: Tick the box that says ' Isolate music player to (user), leaving everything else in (System)'
    • No.: Untick the box that says ' Isolate music player to (user), leaving everything else in (System)'
  2. If you chose Yes above, you now get to  decide which CPUs run all your music applications in one group, and everything else in another group. While this does not offer much flexibility, in most cases you should hear an improvement in audio quality.

Make your changes, and do not forget to hit the 'Save' button at the bottom of the page for all your changes to take effect.

 Main   Configuration    System