rtcqs is a Python utility to analyze your system and detect possible bottlenecks that could have a negative impact on the performance of your system when working with Linux audio.
Find a file
Arnout Engelen bae92cb8f5
All checks were successful
build-rtcqs / build-rtcqs (push) Successful in 2m25s
Merge pull request 'Add missing l to imits.conf' (#33) from alexanderbrock/rtcqs:typo into main
Reviewed-on: #33
Reviewed-by: Arnout Engelen <[email protected]>
2025-09-25 11:45:38 +02:00
.forgejo/workflows Switch to FreeSimpleGUI 2025-06-09 22:10:15 +02:00
src/rtcqs Add missing l to imits.conf 2025-08-02 14:56:53 +02:00
.gitignore Add pycache dir 2025-04-10 21:24:38 +02:00
LICENSE Initial commit 2021-11-28 17:37:32 +01:00
pyproject.toml Update license and license file entries. Bump version. Switch to FreeSimpleGUI 2025-06-09 22:05:20 +02:00
README.rst Update images 2025-04-06 10:06:11 +00:00
rtcqs.desktop Run GUI version 2022-05-16 12:43:10 +02:00
rtcqs_logo.svg Add logo 2021-12-07 16:06:24 +01:00

rtcqs

Introduction

rtcqs is a Python utility to analyze your system and detect possible bottlenecks that could have a negative impact on the performance of your system when working with Linux audio. It is heavily inspired by raboof's excellent realtimeconfigquickscan script.

Features

Basically the same as realtimeconfigquickscan:

  • Root check
  • Audio group check
  • CPU frequency check
  • High resolution timers check
  • Preempt RT check
  • rtprio check
  • Swappiness check
  • Filesystem check

Additional features:

  • Simultaneous Multithreading (SMT, also known as hyper-threading) check
  • Spectre/Meltdown mitigations check
  • Basic IRQ check of sound cards and USB ports
  • Power management check
  • tkinter GUI

Installation

GUI

If you want to use the GUI you will have to install the python3-tk package or similar for your distro.

Virtual Environment

Make sure the pip and the Python virtual environment module packages are installed, on Ubuntu these would be python3-pip and python3-venv. Then create a virtual environment in a directory of choice and install rtcqs in there.

mkdir -p ~/path/to/rtcqs
cd ~/path/to/rtcqs
python3 -m venv venv &&
. venv/bin/activate &&
pip install --upgrade rtcqs

You can now run rtcqs by simply running rtcqs in a terminal. The GUI can be run with rtcqs_gui. Next time you'd like to run the script or the GUI load the virtual environment again and run either rtcqs or rtcqs_gui.

. venv/bin/activate
rtcqs
rtcqs_gui

Editable Installation

It is also possible to use a so-called "editable installation". This allows you to run the commands directly, without having to load the virtual environment.

mkdir -p ~/path/to/rtcqs
cd ~/path/to/rtcqs
git clone https://codeberg.org/rtcqs/rtcqs.git .
python3 -m venv venv
venv/bin/pip install -e .

You can now run rtcqs by running ~/path/to/rtcqs/venv/bin/rtcqs in a terminal. The GUI can be run with ~/path/to/rtcqs/venv/bin/rtcqs_gui.

Overview

When running the GUI it will immediately show the results of the checks. All checks have their own tab. Each tab title consists of a symbol that shows the check result and the name of the check. A ✔ means the check was successful while a ✘ means rtcqs encountered an issue. This way you can quickly spot which checks have issues.

Clicking 'Cancel' will close rtcqs. Clicking 'About' will bring up a popup window which displays the version and a short description.

https://codeberg.org/attachments/6cf7e097-9e6c-40bb-9590-6e019548e66c
rtcqs main window (tkinter version)
https://codeberg.org/attachments/1588b115-5ad7-4217-a73d-236ea09fa5cc
rtcqs about window (tkinter version)

Future plans

  • Disk scheduler check (first asses what impact different schedulers have on performance)
  • Improve swappiness check (get amount of RAM and work with that)
  • Ditch PySimpleGUI which is not open source anymore and move to pygubu or even popsicle (how audio would that be)

Contact

To contact me send me a mail or if it's a technical issue or question, use this project's issue tracker.

Thanks

Many thanks of course to the original author of realtimeconfigquickscan, Arnout Engelen a.k.a. raboof.