gpustat


Namegpustat JSON
Version 1.1.1 PyPI version JSON
download
home_pagehttps://github.com/wookayin/gpustat
SummaryAn utility to monitor NVIDIA GPU status and usage
upload_time2023-08-22 19:39:06
maintainer
docs_urlNone
authorJongwook Choi
requires_python>=3.6
licenseMIT
keywords nvidia-smi gpu cuda monitoring gpustat
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            `gpustat`
=========

[![pypi](https://img.shields.io/pypi/v/gpustat.svg?maxAge=86400)][pypi_gpustat]
[![Build Status](https://travis-ci.org/wookayin/gpustat.svg?branch=master)](https://travis-ci.org/wookayin/gpustat)
[![license](https://img.shields.io/github/license/wookayin/gpustat.svg?maxAge=86400)](LICENSE)

Just *less* than nvidia-smi?

![Screenshot: gpustat -cp](https://github.com/wookayin/gpustat/blob/master/screenshot.png)

NOTE: This works with NVIDIA Graphics Devices only, no AMD support as of now. Contributions are welcome!

Self-Promotion: A web interface of `gpustat` is available (in alpha)! Check out [gpustat-web][gpustat-web].

[gpustat-web]: https://github.com/wookayin/gpustat-web



Quick Installation
------------------

Install from [PyPI][pypi_gpustat]:

```
pip install gpustat
```

If you don't have root (sudo) privilege, please try installing `gpustat` on user namespace: `pip install --user gpustat`.

To install the latest version (master branch) via pip:

```
pip install git+https://github.com/wookayin/gpustat.git@master
```


### NVIDIA Driver Requirements

`gpustat` uses [NVIDIA's official python bindings for NVML library (pynvml)][pypi_pynvml]. As of now `gpustat` requires `nvidia-ml-py >= 11.450.129`, which is compatible with NVIDIA driver versions R450.00 or higher. Please upgrade the NVIDIA driver if `gpustat` fails to display process information. If your NVIDIA driver is too old, you can use older `gpustat` versions (`pip install gpustat<1.0`). See [#107][gh-issue-107] for more details.


### Python requirements

- gpustat<1.0: Compatible with python 2.7 and >=3.4
- gpustat 1.0: [Python >= 3.4][gh-issue-66]
- gpustat 1.1: Python >= 3.6


Usage
-----

`$ gpustat`

Options (Please see `gpustat --help` for more details):

* `--color`            : Force colored output (even when stdout is not a tty)
* `--no-color`         : Suppress colored output
* `-u`, `--show-user`  : Display username of the process owner
* `-c`, `--show-cmd`   : Display the process name
* `-f`, `--show-full-cmd`   : Display full command and cpu stats of running process
* `-p`, `--show-pid`   : Display PID of the process
* `-F`, `--show-fan`   : Display GPU fan speed
* `-e`, `--show-codec` : Display encoder and/or decoder utilization
* `-P`, `--show-power` : Display GPU power usage and/or limit (`draw` or `draw,limit`)
* `-a`, `--show-all`   : Display all gpu properties above
* `--id`              : Target and query specific GPUs only with the specified indices (e.g. `--id 0,1,2`)
* `--no-processes`    : Do not display process information (user, memory) ([#133][gh-issue-133])
* `--watch`, `-i`, `--interval`   : Run in watch mode (equivalent to `watch gpustat`) if given. Denotes interval between updates.
* `--json`             : JSON Output ([#10][gh-issue-10])
* `--print-completion (bash|zsh|tcsh)` : Print a shell completion script. See [#131][gh-issue-131] for usage.


### Tips

- Try `gpustat --debug` if something goes wrong.
- To periodically watch, try `gpustat --watch` or `gpustat -i` ([#41][gh-issue-41]).
    - For older versions, one may use `watch --color -n1.0 gpustat --color`.
- Running `nvidia-smi daemon` (root privilege required) will make querying GPUs much **faster** and use less CPU ([#54][gh-issue-54]).
- The GPU ID (index) shown by `gpustat` (and `nvidia-smi`) is PCI BUS ID,
  while CUDA uses a different ordering (assigns the fastest GPU with the lowest ID) by default.
  Therefore, in order to ensure CUDA and `gpustat` use **same GPU index**,
  configure the `CUDA_DEVICE_ORDER` environment variable to `PCI_BUS_ID`
  (before setting `CUDA_VISIBLE_DEVICES` for your CUDA program):
  `export CUDA_DEVICE_ORDER=PCI_BUS_ID`.


[pypi_gpustat]: https://pypi.org/project/gpustat/
[pypi_pynvml]: https://pypi.org/project/nvidia-ml-py/#history
[gh-issue-10]: https://github.com/wookayin/gpustat/issues/10
[gh-issue-41]: https://github.com/wookayin/gpustat/issues/41
[gh-issue-54]: https://github.com/wookayin/gpustat/issues/54
[gh-issue-66]: https://github.com/wookayin/gpustat/issues/66
[gh-issue-107]: https://github.com/wookayin/gpustat/issues/107
[gh-issue-131]: https://github.com/wookayin/gpustat/issues/131
[gh-issue-133]: https://github.com/wookayin/gpustat/issues/133

Default display
---------------

```
[0] GeForce GTX Titan X | 77°C,  96 % | 11848 / 12287 MB | python/52046(11821M)
```

- `[0]`: GPU index (starts from 0) as PCI_BUS_ID
- `GeForce GTX Titan X`: GPU name
- `77°C`: GPU Temperature (in Celsius)
- `96 %`: GPU Utilization
- `11848 / 12287 MB`: GPU Memory Usage (Used / Total)
- `python/...`: Running processes on GPU, owner/cmdline/PID (and their GPU memory usage)

Changelog
---------

See [CHANGELOG.md](CHANGELOG.md)


License
-------

[MIT License](LICENSE)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/wookayin/gpustat",
    "name": "gpustat",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "nvidia-smi gpu cuda monitoring gpustat",
    "author": "Jongwook Choi",
    "author_email": "wookayin@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/79/c4/46d005aec3bf911cb030467d91e062a5386ff4a03e51874424cacc0f60c1/gpustat-1.1.1.tar.gz",
    "platform": null,
    "description": "`gpustat`\n=========\n\n[![pypi](https://img.shields.io/pypi/v/gpustat.svg?maxAge=86400)][pypi_gpustat]\n[![Build Status](https://travis-ci.org/wookayin/gpustat.svg?branch=master)](https://travis-ci.org/wookayin/gpustat)\n[![license](https://img.shields.io/github/license/wookayin/gpustat.svg?maxAge=86400)](LICENSE)\n\nJust *less* than nvidia-smi?\n\n![Screenshot: gpustat -cp](https://github.com/wookayin/gpustat/blob/master/screenshot.png)\n\nNOTE: This works with NVIDIA Graphics Devices only, no AMD support as of now. Contributions are welcome!\n\nSelf-Promotion: A web interface of `gpustat` is available (in alpha)! Check out [gpustat-web][gpustat-web].\n\n[gpustat-web]: https://github.com/wookayin/gpustat-web\n\n\n\nQuick Installation\n------------------\n\nInstall from [PyPI][pypi_gpustat]:\n\n```\npip install gpustat\n```\n\nIf you don't have root (sudo) privilege, please try installing `gpustat` on user namespace: `pip install --user gpustat`.\n\nTo install the latest version (master branch) via pip:\n\n```\npip install git+https://github.com/wookayin/gpustat.git@master\n```\n\n\n### NVIDIA Driver Requirements\n\n`gpustat` uses [NVIDIA's official python bindings for NVML library (pynvml)][pypi_pynvml]. As of now `gpustat` requires `nvidia-ml-py >= 11.450.129`, which is compatible with NVIDIA driver versions R450.00 or higher. Please upgrade the NVIDIA driver if `gpustat` fails to display process information. If your NVIDIA driver is too old, you can use older `gpustat` versions (`pip install gpustat<1.0`). See [#107][gh-issue-107] for more details.\n\n\n### Python requirements\n\n- gpustat<1.0: Compatible with python 2.7 and >=3.4\n- gpustat 1.0: [Python >= 3.4][gh-issue-66]\n- gpustat 1.1: Python >= 3.6\n\n\nUsage\n-----\n\n`$ gpustat`\n\nOptions (Please see `gpustat --help` for more details):\n\n* `--color`            : Force colored output (even when stdout is not a tty)\n* `--no-color`         : Suppress colored output\n* `-u`, `--show-user`  : Display username of the process owner\n* `-c`, `--show-cmd`   : Display the process name\n* `-f`, `--show-full-cmd`   : Display full command and cpu stats of running process\n* `-p`, `--show-pid`   : Display PID of the process\n* `-F`, `--show-fan`   : Display GPU fan speed\n* `-e`, `--show-codec` : Display encoder and/or decoder utilization\n* `-P`, `--show-power` : Display GPU power usage and/or limit (`draw` or `draw,limit`)\n* `-a`, `--show-all`   : Display all gpu properties above\n* `--id`              : Target and query specific GPUs only with the specified indices (e.g. `--id 0,1,2`)\n* `--no-processes`    : Do not display process information (user, memory) ([#133][gh-issue-133])\n* `--watch`, `-i`, `--interval`   : Run in watch mode (equivalent to `watch gpustat`) if given. Denotes interval between updates.\n* `--json`             : JSON Output ([#10][gh-issue-10])\n* `--print-completion (bash|zsh|tcsh)` : Print a shell completion script. See [#131][gh-issue-131] for usage.\n\n\n### Tips\n\n- Try `gpustat --debug` if something goes wrong.\n- To periodically watch, try `gpustat --watch` or `gpustat -i` ([#41][gh-issue-41]).\n    - For older versions, one may use `watch --color -n1.0 gpustat --color`.\n- Running `nvidia-smi daemon` (root privilege required) will make querying GPUs much **faster** and use less CPU ([#54][gh-issue-54]).\n- The GPU ID (index) shown by `gpustat` (and `nvidia-smi`) is PCI BUS ID,\n  while CUDA uses a different ordering (assigns the fastest GPU with the lowest ID) by default.\n  Therefore, in order to ensure CUDA and `gpustat` use **same GPU index**,\n  configure the `CUDA_DEVICE_ORDER` environment variable to `PCI_BUS_ID`\n  (before setting `CUDA_VISIBLE_DEVICES` for your CUDA program):\n  `export CUDA_DEVICE_ORDER=PCI_BUS_ID`.\n\n\n[pypi_gpustat]: https://pypi.org/project/gpustat/\n[pypi_pynvml]: https://pypi.org/project/nvidia-ml-py/#history\n[gh-issue-10]: https://github.com/wookayin/gpustat/issues/10\n[gh-issue-41]: https://github.com/wookayin/gpustat/issues/41\n[gh-issue-54]: https://github.com/wookayin/gpustat/issues/54\n[gh-issue-66]: https://github.com/wookayin/gpustat/issues/66\n[gh-issue-107]: https://github.com/wookayin/gpustat/issues/107\n[gh-issue-131]: https://github.com/wookayin/gpustat/issues/131\n[gh-issue-133]: https://github.com/wookayin/gpustat/issues/133\n\nDefault display\n---------------\n\n```\n[0] GeForce GTX Titan X | 77\u00b0C,  96 % | 11848 / 12287 MB | python/52046(11821M)\n```\n\n- `[0]`: GPU index (starts from 0) as PCI_BUS_ID\n- `GeForce GTX Titan X`: GPU name\n- `77\u00b0C`: GPU Temperature (in Celsius)\n- `96 %`: GPU Utilization\n- `11848 / 12287 MB`: GPU Memory Usage (Used / Total)\n- `python/...`: Running processes on GPU, owner/cmdline/PID (and their GPU memory usage)\n\nChangelog\n---------\n\nSee [CHANGELOG.md](CHANGELOG.md)\n\n\nLicense\n-------\n\n[MIT License](LICENSE)\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "An utility to monitor NVIDIA GPU status and usage",
    "version": "1.1.1",
    "project_urls": {
        "Homepage": "https://github.com/wookayin/gpustat"
    },
    "split_keywords": [
        "nvidia-smi",
        "gpu",
        "cuda",
        "monitoring",
        "gpustat"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "79c446d005aec3bf911cb030467d91e062a5386ff4a03e51874424cacc0f60c1",
                "md5": "63ce9a815d1d252c231f32eecd2929fd",
                "sha256": "c18d3ed5518fc16300c42d694debc70aebb3be55cae91f1db64d63b5fa8af9d8"
            },
            "downloads": -1,
            "filename": "gpustat-1.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "63ce9a815d1d252c231f32eecd2929fd",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 98052,
            "upload_time": "2023-08-22T19:39:06",
            "upload_time_iso_8601": "2023-08-22T19:39:06.062392Z",
            "url": "https://files.pythonhosted.org/packages/79/c4/46d005aec3bf911cb030467d91e062a5386ff4a03e51874424cacc0f60c1/gpustat-1.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-08-22 19:39:06",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "wookayin",
    "github_project": "gpustat",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "gpustat"
}
        
Elapsed time: 0.15094s