dcustat


Namedcustat JSON
Version 0.0.3 PyPI version JSON
download
home_pagehttps://github.com/wmc1992/dcustat
SummaryAn utility to monitor Hygon DCU status and usage
upload_time2023-08-10 03:56:39
maintainer
docs_urlNone
authorwmc1992
requires_python>=3.8
licenseMIT
keywords dcu monitoring dcustat
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # `dcustat`

一个能够简洁的显示海光 DCU 设备状态的命令行工具;

之前使用GPU时习惯了使用工具 [`gpustat`](https://github.com/wookayin/gpustat) 查看GPU状态,使用海光的 DCU 设备之后发现并没有类似的工具,于是仿照  [`gpustat`](https://github.com/wookayin/gpustat) 自己写了一个;
显示效果如下图:

<div align=center><img src="./docs/dcustat_light.png" width=50% alt="dcustat png" /></div>

## 依赖说明

python版本要求:`python>=3.8`;

该工具的底层是调用的命令 `rocm-smi`,所以在使用该工具前需要确保 DCU 的固件和驱动都正常安装。

## 安装说明

```
pip install dcustat
```

## 使用说明

使用如下命令单次获取当前 dcu 设备信息:

```shell
dcustat
```

使用如下命令动态刷新当前 dcu 设备信息,默认每2秒刷新一次:

```
dcustat --watch
```

可选参数如下:

```
usage: dcustat [-h] [-i [INTERVAL]] [--light] [--debug] [-v]

optional arguments:

  -h, --help            show this help message and exit

  -i [INTERVAL], --interval [INTERVAL], --watch [INTERVAL]
                        动态刷新模式;INTERVAL为刷新间隔,单位:秒;默认每2秒刷新一次;

  --light               使用较亮的模式显示,如果显示器渲染出来的结果较暗,可以打开该参数;

  --debug               Debug模式时允许在程序出错的情况下打印更多的调试信息;

  -v, --version         show program's version number and exit
```

### 参数 --light 说明

有的显示器渲染结果中部分指标比较暗,如下图左侧所示。此时可以添加上 --light 参数,所有的结果都会以更亮的形式进行显示,如下图右侧所示。

```
dcustat --watch --light
```

|默认|加--light参数|
|---|---|
|<img src="./docs/dcustat_dark.png" width="100%" align=center />|<img src="./docs/dcustat_light.png" width="100%" align=center />|

## 显示内容说明

```
sxcs-k8s-master-01  Mon Aug  7  17:35:53 2023
 ID   温度,   风扇,  AvgPwr / PwrCap,  显存,  Core
[0] 43.0°C,  0.0%,  20.0W / 450.0W,  0.0%,  0.0%
[1] 43.0°C,  0.0%,  20.0W / 450.0W,  0.0%,  0.0%
[2] 43.0°C,  0.0%,  20.0W / 450.0W,  0.0%,  0.0%
[3] 43.0°C,  0.0%,  20.0W / 450.0W,  0.0%,  0.0%
```

* header:第1行为header,展示的信息从左到右依次为机器名称、当前时间;

* title:第2行为title,title是对后面展示的信息的各字段的说明:

    * `ID` 列是显卡的id;

    * `温度` 列是显卡的当前温度;

    * `风扇` 列是显卡风扇的当前转速;

    * `AvgPwr` 列是平均功率;

    * `PwrCap` 列是显卡的功率上限;

    * `显存` 列是当前显存的使用率;

    * `Core` 列是当前计算资源的使用率。

## Reference

本项目的灵感、排版展示、以及代码的整体结构都是源自 [`gpustat`](https://github.com/wookayin/gpustat),本项目只是将其工作适配到了海光 DCU 设备上;

## License

[MIT License](./LICENSE)



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/wmc1992/dcustat",
    "name": "dcustat",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "dcu monitoring dcustat",
    "author": "wmc1992",
    "author_email": "m18810541081@163.com",
    "download_url": "",
    "platform": null,
    "description": "# `dcustat`\n\n\u4e00\u4e2a\u80fd\u591f\u7b80\u6d01\u7684\u663e\u793a\u6d77\u5149 DCU \u8bbe\u5907\u72b6\u6001\u7684\u547d\u4ee4\u884c\u5de5\u5177\uff1b\n\n\u4e4b\u524d\u4f7f\u7528GPU\u65f6\u4e60\u60ef\u4e86\u4f7f\u7528\u5de5\u5177 [`gpustat`](https://github.com/wookayin/gpustat) \u67e5\u770bGPU\u72b6\u6001\uff0c\u4f7f\u7528\u6d77\u5149\u7684 DCU \u8bbe\u5907\u4e4b\u540e\u53d1\u73b0\u5e76\u6ca1\u6709\u7c7b\u4f3c\u7684\u5de5\u5177\uff0c\u4e8e\u662f\u4eff\u7167  [`gpustat`](https://github.com/wookayin/gpustat) \u81ea\u5df1\u5199\u4e86\u4e00\u4e2a\uff1b\n\u663e\u793a\u6548\u679c\u5982\u4e0b\u56fe\uff1a\n\n<div align=center><img src=\"./docs/dcustat_light.png\" width=50% alt=\"dcustat png\" /></div>\n\n## \u4f9d\u8d56\u8bf4\u660e\n\npython\u7248\u672c\u8981\u6c42\uff1a`python>=3.8`\uff1b\n\n\u8be5\u5de5\u5177\u7684\u5e95\u5c42\u662f\u8c03\u7528\u7684\u547d\u4ee4 `rocm-smi`\uff0c\u6240\u4ee5\u5728\u4f7f\u7528\u8be5\u5de5\u5177\u524d\u9700\u8981\u786e\u4fdd DCU \u7684\u56fa\u4ef6\u548c\u9a71\u52a8\u90fd\u6b63\u5e38\u5b89\u88c5\u3002\n\n## \u5b89\u88c5\u8bf4\u660e\n\n```\npip install dcustat\n```\n\n## \u4f7f\u7528\u8bf4\u660e\n\n\u4f7f\u7528\u5982\u4e0b\u547d\u4ee4\u5355\u6b21\u83b7\u53d6\u5f53\u524d dcu \u8bbe\u5907\u4fe1\u606f\uff1a\n\n```shell\ndcustat\n```\n\n\u4f7f\u7528\u5982\u4e0b\u547d\u4ee4\u52a8\u6001\u5237\u65b0\u5f53\u524d dcu \u8bbe\u5907\u4fe1\u606f\uff0c\u9ed8\u8ba4\u6bcf2\u79d2\u5237\u65b0\u4e00\u6b21\uff1a\n\n```\ndcustat --watch\n```\n\n\u53ef\u9009\u53c2\u6570\u5982\u4e0b\uff1a\n\n```\nusage: dcustat [-h] [-i [INTERVAL]] [--light] [--debug] [-v]\n\noptional arguments:\n\n  -h, --help            show this help message and exit\n\n  -i [INTERVAL], --interval [INTERVAL], --watch [INTERVAL]\n                        \u52a8\u6001\u5237\u65b0\u6a21\u5f0f\uff1bINTERVAL\u4e3a\u5237\u65b0\u95f4\u9694\uff0c\u5355\u4f4d\uff1a\u79d2\uff1b\u9ed8\u8ba4\u6bcf2\u79d2\u5237\u65b0\u4e00\u6b21\uff1b\n\n  --light               \u4f7f\u7528\u8f83\u4eae\u7684\u6a21\u5f0f\u663e\u793a\uff0c\u5982\u679c\u663e\u793a\u5668\u6e32\u67d3\u51fa\u6765\u7684\u7ed3\u679c\u8f83\u6697\uff0c\u53ef\u4ee5\u6253\u5f00\u8be5\u53c2\u6570\uff1b\n\n  --debug               Debug\u6a21\u5f0f\u65f6\u5141\u8bb8\u5728\u7a0b\u5e8f\u51fa\u9519\u7684\u60c5\u51b5\u4e0b\u6253\u5370\u66f4\u591a\u7684\u8c03\u8bd5\u4fe1\u606f\uff1b\n\n  -v, --version         show program's version number and exit\n```\n\n### \u53c2\u6570 --light \u8bf4\u660e\n\n\u6709\u7684\u663e\u793a\u5668\u6e32\u67d3\u7ed3\u679c\u4e2d\u90e8\u5206\u6307\u6807\u6bd4\u8f83\u6697\uff0c\u5982\u4e0b\u56fe\u5de6\u4fa7\u6240\u793a\u3002\u6b64\u65f6\u53ef\u4ee5\u6dfb\u52a0\u4e0a --light \u53c2\u6570\uff0c\u6240\u6709\u7684\u7ed3\u679c\u90fd\u4f1a\u4ee5\u66f4\u4eae\u7684\u5f62\u5f0f\u8fdb\u884c\u663e\u793a\uff0c\u5982\u4e0b\u56fe\u53f3\u4fa7\u6240\u793a\u3002\n\n```\ndcustat --watch --light\n```\n\n|\u9ed8\u8ba4|\u52a0--light\u53c2\u6570|\n|---|---|\n|<img src=\"./docs/dcustat_dark.png\" width=\"100%\" align=center />|<img src=\"./docs/dcustat_light.png\" width=\"100%\" align=center />|\n\n## \u663e\u793a\u5185\u5bb9\u8bf4\u660e\n\n```\nsxcs-k8s-master-01  Mon Aug  7  17:35:53 2023\n ID   \u6e29\u5ea6,   \u98ce\u6247,  AvgPwr / PwrCap,  \u663e\u5b58,  Core\n[0] 43.0\u00b0C,  0.0%,  20.0W / 450.0W,  0.0%,  0.0%\n[1] 43.0\u00b0C,  0.0%,  20.0W / 450.0W,  0.0%,  0.0%\n[2] 43.0\u00b0C,  0.0%,  20.0W / 450.0W,  0.0%,  0.0%\n[3] 43.0\u00b0C,  0.0%,  20.0W / 450.0W,  0.0%,  0.0%\n```\n\n* header\uff1a\u7b2c1\u884c\u4e3aheader\uff0c\u5c55\u793a\u7684\u4fe1\u606f\u4ece\u5de6\u5230\u53f3\u4f9d\u6b21\u4e3a\u673a\u5668\u540d\u79f0\u3001\u5f53\u524d\u65f6\u95f4\uff1b\n\n* title\uff1a\u7b2c2\u884c\u4e3atitle\uff0ctitle\u662f\u5bf9\u540e\u9762\u5c55\u793a\u7684\u4fe1\u606f\u7684\u5404\u5b57\u6bb5\u7684\u8bf4\u660e\uff1a\n\n    * `ID` \u5217\u662f\u663e\u5361\u7684id\uff1b\n\n    * `\u6e29\u5ea6` \u5217\u662f\u663e\u5361\u7684\u5f53\u524d\u6e29\u5ea6\uff1b\n\n    * `\u98ce\u6247` \u5217\u662f\u663e\u5361\u98ce\u6247\u7684\u5f53\u524d\u8f6c\u901f\uff1b\n\n    * `AvgPwr` \u5217\u662f\u5e73\u5747\u529f\u7387\uff1b\n\n    * `PwrCap` \u5217\u662f\u663e\u5361\u7684\u529f\u7387\u4e0a\u9650\uff1b\n\n    * `\u663e\u5b58` \u5217\u662f\u5f53\u524d\u663e\u5b58\u7684\u4f7f\u7528\u7387\uff1b\n\n    * `Core` \u5217\u662f\u5f53\u524d\u8ba1\u7b97\u8d44\u6e90\u7684\u4f7f\u7528\u7387\u3002\n\n## Reference\n\n\u672c\u9879\u76ee\u7684\u7075\u611f\u3001\u6392\u7248\u5c55\u793a\u3001\u4ee5\u53ca\u4ee3\u7801\u7684\u6574\u4f53\u7ed3\u6784\u90fd\u662f\u6e90\u81ea [`gpustat`](https://github.com/wookayin/gpustat)\uff0c\u672c\u9879\u76ee\u53ea\u662f\u5c06\u5176\u5de5\u4f5c\u9002\u914d\u5230\u4e86\u6d77\u5149 DCU \u8bbe\u5907\u4e0a\uff1b\n\n## License\n\n[MIT License](./LICENSE)\n\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "An utility to monitor Hygon DCU status and usage",
    "version": "0.0.3",
    "project_urls": {
        "Homepage": "https://github.com/wmc1992/dcustat"
    },
    "split_keywords": [
        "dcu",
        "monitoring",
        "dcustat"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fbdee24c5d19a648b44372483e83bf9bd8a3a3883fc7ff0af80c2697b506be24",
                "md5": "1552f9c23facf127d9cdd0ffe239492e",
                "sha256": "8f098964fd528fe697fe04a41d7949dcb567a9a8323ec1534b0aadc4ff9d2f1c"
            },
            "downloads": -1,
            "filename": "dcustat-0.0.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1552f9c23facf127d9cdd0ffe239492e",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 9534,
            "upload_time": "2023-08-10T03:56:39",
            "upload_time_iso_8601": "2023-08-10T03:56:39.783244Z",
            "url": "https://files.pythonhosted.org/packages/fb/de/e24c5d19a648b44372483e83bf9bd8a3a3883fc7ff0af80c2697b506be24/dcustat-0.0.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-08-10 03:56:39",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "wmc1992",
    "github_project": "dcustat",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [],
    "lcname": "dcustat"
}
        
Elapsed time: 0.09662s