/linux-cachyos

Archlinux Kernel based on different schedulers and some other performance improvements.

Primary LanguageShell

Linux Kernel with several scheduler and other improvements

General Informations

The CachyOS are improved kernels which improve the performance and other improvements. Following Scheduler are supported:

linux-cachyos will now use as default the BORE scheduler!

  • Standard Scheduler Completely Fair Scheduler (CFS) - linux-cachyos-cfs
  • CacULE and CacULE-RDB created from Hamad Marri, maintained by CachyOS - linux-cachyos-cacule
  • BitMap Queue (BMQ) Alfred Chen Scheduler - linux-cachyos-bmq
  • Priority and Deadline based Skiplist multiple queue scheduler (PDS) - Alfred Chen Scheduler » linux-cachyos-pds
  • Task Type Scheduler by Hamad Marri (TT) - linux-cachyos-tt ## fixed for 5.18 by @psndna88
  • BORE (Burst-Oriented Response Enhancer) CPU Scheduler by firelzrd (BORE) - linux-cachyos-bore

All kernels are prebuilt in two different march versions (x86_64 and x86_64_v3) and also with the lto enabled kernels in the cachyos repo.

Features

  • Very customizable PKGBUILD with many features and improvements
  • 5 Different scheduler are supported, CacULE-,CFS-,tt-,bmq-,bore-, and pds scheduler
  • GCC/CLANG Optimization with automatically found cpu arch or also selectable cpu arch
  • Choose between LLVM/LTO or GCC
  • Choose between 300Hz, 500Hz, 600 Hz ,750Hz and 1000Hz
  • Improved BFQ Scheduler
  • Back-ported patches from linux-next
  • General improved sysctl settings and upstream scheduler fixes
  • Latest LRU Patch-set, default enabled
  • Damon Reclaim enabled at default
  • BBRv2 tcp_congestion_control
  • LLVM ThinLTO provided with *-lto Kernel (in the cachyos-repo)
  • LRNG Framework (default enabled)
  • Android ANBOX patch-set
  • Latest & improved ZSTD patch-set
  • Latest BTRFS improvements & fixes
  • KSMBD Module for Samba3 Server
  • AMD PSTATE Driver enabled by default
  • Clearlinux Patchset
  • Kernel Control Flow Integrity (kCFI) selectable when using LLVM
  • ZFS Filesystem Support and prebuilt in the repo!
  • WINESYNC Fastsync

WINESYNC Usage:

Insall following packages from the AUR, if you get into issue's:

And disable following enviroment variables in lutris/steam/..

WINEESYNC=0
WINEFSYNC=0
WINEFSYNC_FUTEX2=0

Also you need a wine/proton which includes the winesync patch. I would recommend to built one from wine-tkg or you will find prebuilt ones in our repo.

Other distros

  • First I will release every kernel update with a complete patch for every scheduler and their config.
  • Next I will implement a building system so it is possible to build the kernel for several distros.
  • Maybe I will provide some releases for debian based distros.

We are providing a repo which includes all kernels in generic-v3 and generic and more optimized packages

How to add our repo automatically with CPU detection (if x86-64-v3 is supported)

Just run following command:

automatic march detection and changing the pacman.conf:

wget https://mirror.cachyos.org/cachyos-repo.tar.xz
tar xvf cachyos-repo.tar.xz
cd cachyos-repo
sudo ./cachyos-repo.sh

--

manually:

sudo pacman-key --recv-keys F3B607488DB35A47 --keyserver keyserver.ubuntu.com

sudo pacman-key --lsign-key F3B607488DB35A47

sudo pacman -U 'https://mirror.cachyos.org/repo/x86_64/cachyos/cachyos-keyring-2-1-any.pkg.tar.zst' 'https://mirror.cachyos.org/repo/x86_64/cachyos/cachyos-mirrorlist-10-1-any.pkg.tar.zst' 'https://mirror.cachyos.org/repo/x86_64/cachyos/cachyos-v3-mirrorlist-10-1-any.pkg.tar.zst'

  **Checking x86_64_v3 cpu support:**

  /lib/ld-linux-x86-64.so.2 --help | grep "x86-64-v3 (supported, searched)"

  if you get an output change at the /etc/pacman.conf following:
  ```
  #Architecture = auto
  Architecture = x86_64 x86_64_v3
  ```
  add following under the arch repos the "-v3" repos only if they are supported:
  ```
  # cachyos repos
  [cachyos-v3]
  Include = /etc/pacman.d/cachyos-v3-mirrorlist
  [cachyos]
  Include = /etc/pacman.d/cachyos-mirrorlist

This script will also backup your old pacman.conf.

This script will auto-detect you architecture, if your CPU have x86-64-v3 support, it will automatically use the repos which are optimized with this flag and some other flags.

Also all provided Kernels, Browsers, ... are optimized and compiled.

## How to Backup the config and use the native Arch Packages

- Remove or Backup the config located at /etc/pacman.conf
- then run `sudo mv /etc/pacman.conf.bak /etc/pacman.conf`
- Then run following command to switch the packages to the default arch packages `sudo pacman -Suuy`


More information's you will find here [CachyOS](https://github.com/cachyos) or [Discord](https://discord.gg/k39qfrxPNa)

How to use CLANG/LLVM/LTO compiled Kernels on Nvidia driver with DKMS:

Not needed anymore, just install the latest dkms version (3.0.2).

Support

You can join the CachyOS Discord with the following link:

https://discord.gg/qJqj94uFwE

or at telegram:

https://t.me/+zCzPX4cAFjk1MTYy

Donations are welcome for the compile server for the repo or a cup of coffee for maintain this repo

https://paypal.me/pttrr

Valueable Contributors

Hamad Marri for the CacULE Scheduler

BL4CKH47H4CK3R for Optimization, Bug Hunting & Support

SirLucjan (Piotr Gorski)

Archlinux for the great linux operating system

And all other Kernel Developers and Supporters