Name | slurm-viewer JSON |
Version |
1.0.0
JSON |
| download |
home_page | None |
Summary | View a SLURM cluster and inspect nodes and jobs. |
upload_time | 2024-11-14 14:03:03 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.9 |
license | None |
keywords |
xnat
tui
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# Slurm Viewer
![Python Version from PEP 621 TOML](https://img.shields.io/python/required-version-toml?tomlFilePath=https%3A%2F%2Fgitlab.com%2Flkeb%2Fslurm_viewer%2F-%2Fraw%2Fmain%2Fpyproject.toml)
![Gitlab Pipeline Status](https://img.shields.io/gitlab/pipeline-status/lkeb%2Fslurm_viewer)
![PyPI - License](https://img.shields.io/pypi/l/slurm-viewer)
![PyPI - Status](https://img.shields.io/pypi/status/slurm-viewer)
![PyPI - Version](https://img.shields.io/pypi/v/slurm-viewer)
![PyPI - Format](https://img.shields.io/pypi/format/slurm-viewer)
![Pepy Total Downloads](https://img.shields.io/pepy/dt/slurm-viewer)
## Introduction
View the status of a SLURM cluster, including nodes and queue. This application can be run on the cluster itself or any
computer that can ssh into the cluster. Using it via a ssh connection, especially using a jump host can be slow.
Features:
- Overview of all nodes or just nodes in a set of partitions.
- Limit to nodes with GPUs / available GPUs.
- Show the running jobs on a selection of partitions and the jobs waiting to be scheduled.
- Show the GPU memory used over the last 4 weeks.
View the nodes in the selected partitions.
![Slurmviewer Nodes](https://gitlab.com/lkeb/slurm_viewer/-/raw/main/slurmviewer_nodes.svg "Nodes")
View the queue of running and pending jobs.
![Slurmviewer Queue](https://gitlab.com/lkeb/slurm_viewer/-/raw/main/slurmviewer_queue.svg "Queue")
View the GPU utilization and memory usage
![Slurmviewer SPU](https://gitlab.com/lkeb/slurm_viewer/-/raw/main/slurmviewer_gpu.svg "GPU")
## Installation
```bash
pip install slurm-viewer
```
## Usage
Run `slurm-viewer-init` to create a default settings file stored in `~/.config/slurm-viewer/settings.toml`.
Edit this to reflect your setup. Once you have finished run `slurm-viewer` to start the UI.
## Settings
The config files consist of several sections. You can add multiple slurm clusters.
```toml
[ui]
node_columns = ["node_name", "state", "gpu_tot", "gpu_alloc", "gpu_avail", "gpu_type", "gpu_mem", "cpu_tot", "cpu_alloc", "cpu_avail", "mem_tot", "mem_alloc", "mem_avail", "cpu_gpu", "mem_gpu", "cpuload", "partitions", "active_features"]
queue_columns = ["user", "job_id", "reason", "exec_host", "start_delay", "run_time", "time_limit", "command"]
priority_columns = ["user_name", "job_id", "job_priority_n", "age_n", "fair_share_n", "partition_name"]
[[clusters]]
name = "cluster_1"
partitions = ["cpu", "gpu"]
node_name_ignore_prefix = ["node"]
servers = ["cluster_1_logon_node_1", "cluster_1_logon_node_2"]
[[clusters]]
name = "cluster_2"
partitions = ["cpu-short", "cpu-medium", "cpu-long", "gpu-short", "gpu-medium", "gpu-long"]
server = "cluster_2.logon.node"
```
If you need to connect using a jumphost/gateway use the `~/.ssh/config` to setup the connections and use the `Host` name as
the server.
Example of a ssh config:
```
Host gateway_1
User my_user_name
HostName gateway.somewhere
Host cluster_1
User my_user_name
HostName logonnode.somewhere
ProxyCommand ssh -W %h:%p gateway_1
```
Raw data
{
"_id": null,
"home_page": null,
"name": "slurm-viewer",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "XNAT, TUI",
"author": null,
"author_email": "Patrick de Koning <pjhdekoning@lumc.nl>",
"download_url": null,
"platform": null,
"description": "# Slurm Viewer\r\n\r\n![Python Version from PEP 621 TOML](https://img.shields.io/python/required-version-toml?tomlFilePath=https%3A%2F%2Fgitlab.com%2Flkeb%2Fslurm_viewer%2F-%2Fraw%2Fmain%2Fpyproject.toml)\r\n![Gitlab Pipeline Status](https://img.shields.io/gitlab/pipeline-status/lkeb%2Fslurm_viewer)\r\n![PyPI - License](https://img.shields.io/pypi/l/slurm-viewer)\r\n![PyPI - Status](https://img.shields.io/pypi/status/slurm-viewer)\r\n![PyPI - Version](https://img.shields.io/pypi/v/slurm-viewer)\r\n![PyPI - Format](https://img.shields.io/pypi/format/slurm-viewer)\r\n![Pepy Total Downloads](https://img.shields.io/pepy/dt/slurm-viewer)\r\n\r\n\r\n\r\n\r\n## Introduction\r\n\r\nView the status of a SLURM cluster, including nodes and queue. This application can be run on the cluster itself or any\r\ncomputer that can ssh into the cluster. Using it via a ssh connection, especially using a jump host can be slow.\r\n\r\nFeatures:\r\n- Overview of all nodes or just nodes in a set of partitions.\r\n- Limit to nodes with GPUs / available GPUs.\r\n- Show the running jobs on a selection of partitions and the jobs waiting to be scheduled.\r\n- Show the GPU memory used over the last 4 weeks.\r\n\r\nView the nodes in the selected partitions.\r\n![Slurmviewer Nodes](https://gitlab.com/lkeb/slurm_viewer/-/raw/main/slurmviewer_nodes.svg \"Nodes\")\r\nView the queue of running and pending jobs.\r\n![Slurmviewer Queue](https://gitlab.com/lkeb/slurm_viewer/-/raw/main/slurmviewer_queue.svg \"Queue\")\r\nView the GPU utilization and memory usage\r\n![Slurmviewer SPU](https://gitlab.com/lkeb/slurm_viewer/-/raw/main/slurmviewer_gpu.svg \"GPU\")\r\n\r\n## Installation\r\n\r\n```bash\r\npip install slurm-viewer\r\n```\r\n\r\n## Usage\r\n\r\nRun `slurm-viewer-init` to create a default settings file stored in `~/.config/slurm-viewer/settings.toml`.\r\nEdit this to reflect your setup. Once you have finished run `slurm-viewer` to start the UI.\r\n\r\n## Settings\r\n\r\nThe config files consist of several sections. You can add multiple slurm clusters.\r\n\r\n```toml\r\n[ui]\r\nnode_columns = [\"node_name\", \"state\", \"gpu_tot\", \"gpu_alloc\", \"gpu_avail\", \"gpu_type\", \"gpu_mem\", \"cpu_tot\", \"cpu_alloc\", \"cpu_avail\", \"mem_tot\", \"mem_alloc\", \"mem_avail\", \"cpu_gpu\", \"mem_gpu\", \"cpuload\", \"partitions\", \"active_features\"]\r\nqueue_columns = [\"user\", \"job_id\", \"reason\", \"exec_host\", \"start_delay\", \"run_time\", \"time_limit\", \"command\"]\r\npriority_columns = [\"user_name\", \"job_id\", \"job_priority_n\", \"age_n\", \"fair_share_n\", \"partition_name\"]\r\n\r\n[[clusters]]\r\nname = \"cluster_1\"\r\npartitions = [\"cpu\", \"gpu\"]\r\nnode_name_ignore_prefix = [\"node\"]\r\nservers = [\"cluster_1_logon_node_1\", \"cluster_1_logon_node_2\"]\r\n\r\n[[clusters]]\r\nname = \"cluster_2\"\r\npartitions = [\"cpu-short\", \"cpu-medium\", \"cpu-long\", \"gpu-short\", \"gpu-medium\", \"gpu-long\"]\r\nserver = \"cluster_2.logon.node\"\r\n\r\n```\r\n\r\nIf you need to connect using a jumphost/gateway use the `~/.ssh/config` to setup the connections and use the `Host` name as\r\nthe server.\r\n\r\nExample of a ssh config:\r\n\r\n```\r\nHost gateway_1\r\n User my_user_name\r\n HostName gateway.somewhere\r\n \r\nHost cluster_1\r\n User my_user_name\r\n HostName logonnode.somewhere\r\n ProxyCommand ssh -W %h:%p gateway_1\r\n```\r\n",
"bugtrack_url": null,
"license": null,
"summary": "View a SLURM cluster and inspect nodes and jobs.",
"version": "1.0.0",
"project_urls": {
"Homepage": "https://gitlab.com/lkeb/slurm_viewer"
},
"split_keywords": [
"xnat",
" tui"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8e6624831a5801bfc35ffc89dc73508a4fda3cc5c78a9147d05727154d3c4c01",
"md5": "a4675b62baaff0e42cea18bf86919a49",
"sha256": "bf49f9decf23e0dd7f6edee2fcac899ab49cb1a9aec8de178bd998ccfaed3b84"
},
"downloads": -1,
"filename": "slurm_viewer-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a4675b62baaff0e42cea18bf86919a49",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 35674,
"upload_time": "2024-11-14T14:03:03",
"upload_time_iso_8601": "2024-11-14T14:03:03.441209Z",
"url": "https://files.pythonhosted.org/packages/8e/66/24831a5801bfc35ffc89dc73508a4fda3cc5c78a9147d05727154d3c4c01/slurm_viewer-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-14 14:03:03",
"github": false,
"gitlab": true,
"bitbucket": false,
"codeberg": false,
"gitlab_user": "lkeb",
"gitlab_project": "slurm_viewer",
"lcname": "slurm-viewer"
}