rtcqs


Namertcqs JSON
Version 0.6.2 PyPI version JSON
download
home_page
SummaryLinux audio performance analyzer
upload_time2024-03-04 18:50:44
maintainer
docs_urlNone
author
requires_python>=3.6
licenseMIT License Copyright (c) 2021 Jeremy Jongepier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords real-time priorities audio limits
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            =====
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 
<https://github.com/raboof/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:

- 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.

.. figure::
      https://codeberg.org/attachments/5092d94a-2a06-4be1-b04e-ca61ae6ed732
   :align: center

   *rtcqs main window (tkinter version)*

.. figure::
      https://codeberg.org/attachments/c0f72b82-470c-4f90-86d5-736226a146ed
   :align: center

   *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.

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "rtcqs",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "real-time,priorities,audio,limits",
    "author": "",
    "author_email": "Jeremy Jongepier <jeremy@autostatic.com>",
    "download_url": "https://files.pythonhosted.org/packages/ac/fc/6fb34305675d3fb54bd46dc9c69f77e7995366e473a28a9613589aa84e6f/rtcqs-0.6.2.tar.gz",
    "platform": null,
    "description": "=====\nrtcqs\n=====\n\nIntroduction\n------------\n\nrtcqs is a Python utility to analyze your system and detect possible \nbottlenecks that could have a negative impact on the performance of your \nsystem when working with Linux audio. It is heavily inspired by raboof's \nexcellent `realtimeconfigquickscan \n<https://github.com/raboof/realtimeconfigquickscan>`_\nscript.\n\nFeatures\n--------\n\nBasically the same as realtimeconfigquickscan:\n\n- Root check\n- Audio group check\n- CPU frequency check\n- High resolution timers check\n- Preempt RT check\n- rtprio check\n- Swappiness check\n- Filesystem check\n\nAdditional features:\n\n- Spectre/Meltdown mitigations check\n- Basic IRQ check of sound cards and USB ports\n- Power management check\n- tkinter GUI\n\nInstallation\n------------\nGUI\n```\nIf you want to use the GUI you will have to install the ``python3-tk`` \npackage or similar for your distro.\n\nVirtual Environment\n```````````````````\nMake sure the ``pip`` and the Python virtual environment module packages are\ninstalled, on Ubuntu these would be ``python3-pip`` and ``python3-venv``. Then\ncreate a virtual environment in a directory of choice and install rtcqs in\nthere.\n\n::\n\n  mkdir -p ~/path/to/rtcqs\n  cd ~/path/to/rtcqs\n  python3 -m venv venv &&\n  . venv/bin/activate &&\n  pip install --upgrade rtcqs\n\nYou can now run rtcqs by simply running ``rtcqs`` in a terminal. The GUI can \nbe run with ``rtcqs_gui``. Next time you'd like to run the script or the GUI\nload the virtual environment again and run either ``rtcqs`` or ``rtcqs_gui``.\n\n::\n\n  . venv/bin/activate\n  rtcqs\n  rtcqs_gui\n\nEditable Installation\n`````````````````````\nIt is also possible to use a so-called \"editable installation\". This allows you\nto run the commands directly, without having to load the virtual environment.\n\n::\n\n  mkdir -p ~/path/to/rtcqs\n  cd ~/path/to/rtcqs\n  git clone https://codeberg.org/rtcqs/rtcqs.git .\n  python3 -m venv venv\n  venv/bin/pip install -e .\n\nYou can now run rtcqs by running ``~/path/to/rtcqs/venv/bin/rtcqs`` in a\nterminal. The GUI can be run with ``~/path/to/rtcqs/venv/bin/rtcqs_gui``.\n\nOverview\n````````\n\nWhen running the GUI it will immediately show the results of the checks. All \nchecks have their own tab. Each tab title consists of a symbol that shows the \ncheck result and the name of the check. A \u2714 means the check was successful \nwhile a \u2718 means rtcqs encountered an issue. This way you can quickly spot \nwhich checks have issues.\n\nClicking 'Cancel' will close rtcqs. Clicking 'About' will bring up a popup \nwindow which displays the version and a short description.\n\n.. figure::\n      https://codeberg.org/attachments/5092d94a-2a06-4be1-b04e-ca61ae6ed732\n   :align: center\n\n   *rtcqs main window (tkinter version)*\n\n.. figure::\n      https://codeberg.org/attachments/c0f72b82-470c-4f90-86d5-736226a146ed\n   :align: center\n\n   *rtcqs about window (tkinter version)*\n\nFuture plans\n------------\n\n- Disk scheduler check (first asses what impact different schedulers have on\n  performance)\n- Improve swappiness check (get amount of RAM and work with that)\n- Ditch PySimpleGUI which is not open source anymore and move to pygubu or\n  even popsicle (how audio would that be)\n\nContact\n-------\n\nTo contact me send me a mail or if it's a technical issue or question, use \nthis project's issue tracker.\n\nThanks\n------\n\nMany thanks of course to the original author of realtimeconfigquickscan, \nArnout Engelen a.k.a. raboof.\n",
    "bugtrack_url": null,
    "license": "MIT License  Copyright (c) 2021 Jeremy Jongepier  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
    "summary": "Linux audio performance analyzer",
    "version": "0.6.2",
    "project_urls": {
        "Homepage": "https://codeberg.org/rtcqs/rtcqs"
    },
    "split_keywords": [
        "real-time",
        "priorities",
        "audio",
        "limits"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "44db06242df315f506f2c803c4606870002893af57d6b7ca66ea833f59ec9206",
                "md5": "ed44e025fa36086eb6fee3c34bcdc2d9",
                "sha256": "074ad1a4a7f97e5d63d7c854465f7d262e276d758f09fa01e0744385d93d1765"
            },
            "downloads": -1,
            "filename": "rtcqs-0.6.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "ed44e025fa36086eb6fee3c34bcdc2d9",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 24771,
            "upload_time": "2024-03-04T18:50:41",
            "upload_time_iso_8601": "2024-03-04T18:50:41.612197Z",
            "url": "https://files.pythonhosted.org/packages/44/db/06242df315f506f2c803c4606870002893af57d6b7ca66ea833f59ec9206/rtcqs-0.6.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "acfc6fb34305675d3fb54bd46dc9c69f77e7995366e473a28a9613589aa84e6f",
                "md5": "4b6276965ca5fa1b0b6892f83d270a5d",
                "sha256": "0df795f641a174c7fa859d62349d0bdc7527ee6f1cd6044ae5c8ed24d500bc92"
            },
            "downloads": -1,
            "filename": "rtcqs-0.6.2.tar.gz",
            "has_sig": false,
            "md5_digest": "4b6276965ca5fa1b0b6892f83d270a5d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 25738,
            "upload_time": "2024-03-04T18:50:44",
            "upload_time_iso_8601": "2024-03-04T18:50:44.175762Z",
            "url": "https://files.pythonhosted.org/packages/ac/fc/6fb34305675d3fb54bd46dc9c69f77e7995366e473a28a9613589aa84e6f/rtcqs-0.6.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-03-04 18:50:44",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": true,
    "codeberg_user": "rtcqs",
    "codeberg_project": "rtcqs",
    "lcname": "rtcqs"
}
        
Elapsed time: 0.20595s