diff options
author | CoprDistGit <infra@openeuler.org> | 2023-06-20 05:12:20 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-06-20 05:12:20 +0000 |
commit | 667638233f5d3f46c3adfc82e425404113291b3f (patch) | |
tree | 3493da25daa8f0751275959be5a1623e5f300910 | |
parent | 0db0a3a3022ee81d8a21f9bcb0e6d581fb4590fe (diff) |
automatic import of python-gpuinfoopeneuler20.03
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-gpuinfo.spec | 249 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 251 insertions, 0 deletions
@@ -0,0 +1 @@ +/gpuinfo-1.0.0a7.tar.gz diff --git a/python-gpuinfo.spec b/python-gpuinfo.spec new file mode 100644 index 0000000..428710a --- /dev/null +++ b/python-gpuinfo.spec @@ -0,0 +1,249 @@ +%global _empty_manifest_terminate_build 0 +Name: python-gpuinfo +Version: 1.0.0a7 +Release: 1 +Summary: A quick access to nvidia gpu information +License: MIT License +URL: https://pypi.org/project/gpuinfo/ +Source0: https://mirrors.aliyun.com/pypi/web/packages/03/94/0d99b8b788cd770cbd85f9324d874208c350f6c6d91596374a612ae558d3/gpuinfo-1.0.0a7.tar.gz +BuildArch: noarch + + +%description +# gpuinfo + +I implement some functions that can help users to obtain nvidia gpu information. + +To use gpuinfo, you need to be able to run 'ps' and 'nvidia-smi' in your terminal. + +# Install with pip +``` +pip install gpuinfo +``` +I only tested on linux system with python3. +https://pypi.org/project/gpuinfo/ + +# Usage + +```python +from gpuinfo import GPUInfo +``` + +GPUInfo has the following functions: + + get_users(gpu_id) + return a dict. show every user and memory on a certain gpu + + check_empty() + check_empty() + return a list containing all GPU ids that no process is using currently. + + get_info() + pid_list,percent,memory,gpu_used=get_info() + return a dict and three lists. pid_list has pids as keys and gpu ids as values, showing which gpu the process is using + + get_user(pid) + get_user(pid) + Input a pid number , return its creator by linux command ps + + gpu_usage() + gpu_usage() + return two lists. The first list contains usage percent of every GPU. The second list contains the memory used of every GPU. The information is obtained by command 'nvidia-smi' + +# Example + +```python +from gpuinfo import GPUInfo + +available_device=GPUInfo.check_empty() +#available_device就是一个含有所有没有任务的gpu编号的列表 +percent,memory=GPUInfo.gpu_usage() +#获得所有gpu的使用百分比和显存占用量 +min_percent=percent.index(min([percent[i] for i in available_device])) +#未被使用的gpu里percent最小的 +min_memory=memory.index(min([memory[i] for i in available_device])) +#未被使用的gpu里显存占用量最少的 + +#如果你使用pytorch +torch.cuda.set_device(min_percent) 或者(min_memory) +``` + + + + +%package -n python3-gpuinfo +Summary: A quick access to nvidia gpu information +Provides: python-gpuinfo +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-gpuinfo +# gpuinfo + +I implement some functions that can help users to obtain nvidia gpu information. + +To use gpuinfo, you need to be able to run 'ps' and 'nvidia-smi' in your terminal. + +# Install with pip +``` +pip install gpuinfo +``` +I only tested on linux system with python3. +https://pypi.org/project/gpuinfo/ + +# Usage + +```python +from gpuinfo import GPUInfo +``` + +GPUInfo has the following functions: + + get_users(gpu_id) + return a dict. show every user and memory on a certain gpu + + check_empty() + check_empty() + return a list containing all GPU ids that no process is using currently. + + get_info() + pid_list,percent,memory,gpu_used=get_info() + return a dict and three lists. pid_list has pids as keys and gpu ids as values, showing which gpu the process is using + + get_user(pid) + get_user(pid) + Input a pid number , return its creator by linux command ps + + gpu_usage() + gpu_usage() + return two lists. The first list contains usage percent of every GPU. The second list contains the memory used of every GPU. The information is obtained by command 'nvidia-smi' + +# Example + +```python +from gpuinfo import GPUInfo + +available_device=GPUInfo.check_empty() +#available_device就是一个含有所有没有任务的gpu编号的列表 +percent,memory=GPUInfo.gpu_usage() +#获得所有gpu的使用百分比和显存占用量 +min_percent=percent.index(min([percent[i] for i in available_device])) +#未被使用的gpu里percent最小的 +min_memory=memory.index(min([memory[i] for i in available_device])) +#未被使用的gpu里显存占用量最少的 + +#如果你使用pytorch +torch.cuda.set_device(min_percent) 或者(min_memory) +``` + + + + +%package help +Summary: Development documents and examples for gpuinfo +Provides: python3-gpuinfo-doc +%description help +# gpuinfo + +I implement some functions that can help users to obtain nvidia gpu information. + +To use gpuinfo, you need to be able to run 'ps' and 'nvidia-smi' in your terminal. + +# Install with pip +``` +pip install gpuinfo +``` +I only tested on linux system with python3. +https://pypi.org/project/gpuinfo/ + +# Usage + +```python +from gpuinfo import GPUInfo +``` + +GPUInfo has the following functions: + + get_users(gpu_id) + return a dict. show every user and memory on a certain gpu + + check_empty() + check_empty() + return a list containing all GPU ids that no process is using currently. + + get_info() + pid_list,percent,memory,gpu_used=get_info() + return a dict and three lists. pid_list has pids as keys and gpu ids as values, showing which gpu the process is using + + get_user(pid) + get_user(pid) + Input a pid number , return its creator by linux command ps + + gpu_usage() + gpu_usage() + return two lists. The first list contains usage percent of every GPU. The second list contains the memory used of every GPU. The information is obtained by command 'nvidia-smi' + +# Example + +```python +from gpuinfo import GPUInfo + +available_device=GPUInfo.check_empty() +#available_device就是一个含有所有没有任务的gpu编号的列表 +percent,memory=GPUInfo.gpu_usage() +#获得所有gpu的使用百分比和显存占用量 +min_percent=percent.index(min([percent[i] for i in available_device])) +#未被使用的gpu里percent最小的 +min_memory=memory.index(min([memory[i] for i in available_device])) +#未被使用的gpu里显存占用量最少的 + +#如果你使用pytorch +torch.cuda.set_device(min_percent) 或者(min_memory) +``` + + + + +%prep +%autosetup -n gpuinfo-1.0.0a7 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-gpuinfo -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Jun 20 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0.0a7-1 +- Package Spec generated @@ -0,0 +1 @@ +f10418f11882f80b75dfb10bcfa0b051 gpuinfo-1.0.0a7.tar.gz |