Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

slurm_top_python

slurm_top_python is a task manager for high-performance computing systems that use Slurm. It was originally designed for the UCSD Expanse servers, but can work on other servers that use Slurm and Slurm jobs.

Credit to ptop - original creators of the Python taskmanager app that this is based on. You can view the licensing under the LICENSE file. This app is an adaptation of their program.

Work in progress

Installation

slurm_top_python is compatible with both Python2.x and Python3.x and is tested on Linux environments.

pip install slurm_top_python

or

git clone https://github.com/kinetekenergy/slurm_top_python
cd slurm_top_python/
pip install -r requirements.txt
sudo python setup.py install

Upgrading slurm_top_python

pip install --upgrade slurm_top_python

Usage

slurm_top_python

Alternatively, you can type s_top.

Common Errors

When running the program, you might get the following error: (<class 'npyscreen.wgwidget.NotEnoughSpaceForWidget'>, NotEnoughSpaceForWidget('Not enough space for requested size'), <traceback object at 0x155552ca4e00>).

This means that your terminal size isn't big enough. To fix this, make your terminal window larger. You can maximize it or manually make it larger.

Developing slurm_top_python

git clone https://github.com/kinetekenergy/slurm_top_python
code slurm_top_python # vscode is preferred, but any IDE that supports docker + devcontainers will work

Open the devcontainer in your IDE. If you are using vscode, there will be a pop-up asking to reopen the folder in a devcontainer. Accept it, and all the necessary tools will be installed.

Note: slurm_top_python will create a log file called .slurm_top_python.log in the home directory of the user.

Main modules

  • slurm_top_python.core : Defines a basic Plugin class that other plugins in the slurm_top_python.plugins inherit.
  • slurm_top_python.interfaces : The interface to the slurm_top_python built using npyscreen.
  • slurm_top_python.plugins : This module contains all the plugin sensors supported i.e Disk Sensor,Memory Sensor,Process Sensor, etc. ( Any new plugin should be added here).
  • slurm_top_python.statistics : Generate continuous statistics using background thread jobs by locating plugins in the plugins directory.
  • slurm_top_python.utils : Custom thread classes.

Publishing

First time:

python -m build
python -m twine upload dist/*
# enter your api key when prompted

To update:

First, update your version number. Then:

python -m build
python -m twine upload dist/<the .whl file that was generated>
# enter your api key when prompted

Metadata

Release files for slurm-top-python 1.0.0a14

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for slurm-top-python 1.0.0a14
File Interpreter ABI Platform
slurm_top_python-1.0.0a14-py3-none-any.whl Python 3 none any Details

Release files / slurm_top_python-1.0.0a14-py3-none-any.whl

Download URL slurm_top_python-1.0.0a14-py3-none-any.whl
Size 24.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
25c138d41ec1eaf231928734ebe3725a9ea2f1a915fe6fa9a5293ce51e8471ce
BLAKE2b-256 checksum
How to use checksums
b1b51e3cc3991eee02c4b4b8af163035135372371793926ed38981e55b52434e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page