%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 - 1.0.0a7-1 - Package Spec generated