{"repo":"pop-os/system76-scheduler","free":true,"listed":false,"github":"https://github.com/pop-os/system76-scheduler","clone":"git clone https://github.com/pop-os/system76-scheduler.git","description":"Auto-configure CFS and process priorities for improved desktop responsiveness","language":"Rust","stars":639,"topics":["linux","process","priority","zen","cfs","scheduler"],"license":"MPL-2.0","category":"workflow-automation","readme_excerpt":"System76 Scheduler Scheduling service which optimizes Linux's CPU scheduler and automatically assigns process priorities for improved desktop responsiveness. Low latency CPU scheduling will be activated automatically when on AC, and the default scheduling latencies set on battery. Processes are regularly sweeped and assigned process priorities based on configuration files. When combined with pop-shell, foreground processes and their sub-processes will be given higher process priority. These changes result in a noticeable improvement in the experienced smoothness and performance of applications and games. The improved responsiveness of applications is most noticeable on older systems with budget hardware, whereas games will benefit from higher framerates and reduced jitter. This is because background applications and services will be given a smaller portion of leftover CPU budget after the active process has had the most time on the CPU. Install Requires dependencies as defined in the debian/control file: - cargo & rustc - clang - just - libclang-dev - libpipewire-0.3-dev - pkg-config Then the included justfile can be used to build and install: DBus - Interface: com.system76.Scheduler - Path: /com/system76/Scheduler The SetForegroundProcess(u32) method can be called to change the active foreground process. Scheduler Config The configuration file is stored at the following locations: - System: /etc/system76-scheduler/config.kdl - Distribution: /usr/share/system76-scheduler/conf","default_branch":null,"files":null,"tree":[],"storefront":"/r/pop-os","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/pop-os/system76-scheduler/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}