服务器端的GPU使用
服务器端的GPU使用
查看GPU信息
查看nvidia GPU信息:
# 输入指令
lspci | grep -i nvidia
# 结果如下:
# 04:00.0 3D controller: NVIDIA Corporation Device 1db4 (rev a1)
# 05:00.0 3D controller: NVIDIA Corporation Device 1db4 (rev a1)
# 08:00.0 3D controller: NVIDIA Corporation Device 1db4 (rev a1)
# 09:00.0 3D controller: NVIDIA Corporation Device 1db4 (rev a1)
# 84:00.0 3D controller: NVIDIA Corporation Device 1db4 (rev a1)
# 85:00.0 3D controller: NVIDIA Corporation Device 1db4 (rev a1)
# 88:00.0 3D controller: NVIDIA Corporation Device 1db4 (rev a1)
# 89:00.0 3D controller: NVIDIA Corporation Device 1db4 (rev a1)
输出结果
04:00.0,可用于后续查看详细的信息查看指定显卡的详细信息:
# 输入指令:
lspci -v -s 04:00.0
# 输出结果:
# 04:00.0 3D controller: NVIDIA Corporation Device 1db4 (rev a1)
# Subsystem: NVIDIA Corporation Device 1214
# Flags: bus master, fast devsel, latency 0, IRQ 26, NUMA node 0
# Memory at c4000000 (32-bit, non-prefetchable) [size=16M]
# Memory at 27800000000 (64-bit, prefetchable) [size=16G]
# Memory at 27c00000000 (64-bit, prefetchable) [size=32M]
# Capabilities: <access denied>
# Kernel driver in use: nvidia
# Kernel modules: nvidiafb, nouveau, nvidia_384_drm, nvidia_384
查看GPU的使用信息
nvidia-smi
其主要看
Memory-Usage栏,避免使用了其他人已经占用了显卡一般使用如下指令,周期性查看显卡的使用情况:
watch -n 10 nvidia-smi
每10s刷新一下显示
指定GPU进行训练
在查看了GPU的信息后,在训练是指定空闲的GPU进行训练。
在终端执行时指定GPU
CUDA_VISIBLE_DEVICES=0 python3 ***.py # 指定GPU集群中第一块GPU使用,其他的屏蔽掉 # CUDA_VISIBLE_DEVICES=1 Only device 1 will be seen
# CUDA_VISIBLE_DEVICES=0,1 Devices 0 and 1 will be visible
# CUDA_VISIBLE_DEVICES="" No GPU will be visible
在配置文件头上指定GPU,此方法和上述方法类似,以下举个例子:
- 创建
.sh文件; - 通过
chmod +x ***.sh给文件加入可执行的属性; - 在文件中写入:
#! /bin/bash
CUDA_VISIBLE_DEVICES=1 \
python model_main.py \
--model_dir=training/model \
--pipeline_config_path=training/pipeline.config \
--num_train_steps=25000
- 之后在执行时,通过
bash ***.sh运行即可。
- 创建
在Python代码中指定
import os
os.environ["CUDA_VISIBLE_DEVICES"] = "0" #指定第一块gpu
在tensorflow中指定GPU的使用
# allow_soft_placement=True : 如果你指定的设备不存在,允许TF自动分配设备
# log_device_placement=True : 是否打印设备分配日志
config = tf.ConfigProto(allow_soft_placement=True, log_device_placement=True)
# 限制GPU资源的使用:两者选其一即可
# 方式一:限制GPU使用率
config.gpu_options.per_process_gpu_memory_fraction = 0.4 #占用40%显存
# 方式二:动态申请显存
config.gpu_options.allow_growth = True
sess = tf.Session(config=config)
参考:
服务器端的GPU使用的更多相关文章
- openGL 提升渲染性能 之 顶点数组 VBO IBO VAO
使用openGL图形库绘制,都需要通过openGL接口向图像显卡提交顶点数据,显卡根据提交的数据绘制出相应的图形. openGL绘制方式有:直接模式,显示列表,顶点数组,顶点索引. 直接模式:最简单, ...
- TensorFlow从1到2(十五)(完结)在浏览器做机器学习
TensorFlow的Javascript版 TensorFlow一直努力扩展自己的基础平台环境,除了熟悉的Python,当前的TensorFlow还实现了支持Javascript/C++/Java/ ...
- OpenStack 企业私有云的若干需求(1):Nova 虚机支持 GPU
本系列会介绍OpenStack 企业私有云的几个需求: 自动扩展(Auto-scaling)支持 多租户和租户隔离 (multi-tenancy and tenancy isolation) 混合云( ...
- 国内云计算的缺失环节: GPU并行计算(转)
[IT时代周刊编者按]云计算特有的优点和巨大的商业前景,让其成为了近年来的IT界最热门词汇之一.当然,这也与中国移动互联网的繁荣紧密相关,它们需要有相应的云计算服务作为支撑.但本文作者祁海江结合自身的 ...
- Pycharm实现服务器端代码的远程调试
Pycharm是很多人在学习机器学习时的常用IDE.但是,当代码需要庞大计算资源的时候,我们往往需要借助远程服务器的GPU资源.很多人都是将代码拷贝到服务器,然后运行,但是当修改调试的时候,很不方便 ...
- 谈谈GPU与FPGA的一些看法
从几个方面来介绍一下GPU和FPGA. 从峰值性能来说,GPU(10Tflops)远远高于FPGA(<1TFlops).GPU上面成千上万个core同时跑在GHz的频率上还是非常壮观的,最新的G ...
- OpenStack企业私有云新需求(1):Nova 虚机支持 GPU
作者:Sammy Liu 刘世民 本系列会介绍OpenStack 企业私有云的几个需求: GPU 支持 自动扩展(Auto-scaling)支持 混合云(Hybrid cloud)支持 物理机(Bar ...
- win7旗舰版+caffe+vs2013+matlab2014b(无GPU版)
参考网站: http://www.cnblogs.com/njust-ycc/p/5776286.html 无法找到gpu/mxGPUArray.h: No such file or director ...
- ubuntu12.04通过Ganglia利用NVML模块进行GPU监控
1.安装Ganglia,这里安装的是3.1*版本,因为监控GPU的模块只支持3.1*版本系列的 apt-get install ganglia* 2.下载并安装PyNVML和NVML模块,下载地址ht ...
随机推荐
- Redis哨兵机制的实现及与SpringBoot的整合
1. 概述 前面我们聊过Redis的读写分离机制,这个机制有个致命的弱点,就是主节点(Master)是个单点,如果主节点宕掉,整个Redis的写操作就无法进行服务了. 为了解决这个问题,就需要依靠&q ...
- 痞子衡嵌入式:在MDK开发环境下将关键函数重定向到RAM中执行的几种方法
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是在MDK开发环境下将关键函数重定向到RAM中执行的几种方法. 这个关键函数重定向到 RAM 中执行系列文章,痞子衡已经写过 <IA ...
- freeswitch编译安装依赖
ncurses:提供字符界面 zlib:数据压缩 libjpeg:JPEG图片格式数据的解码/编码/其他. lua:lua解释器 libedit:一种编辑操作的库,对一些可以交互操作的场景,或转为了自 ...
- Excel表格中单击一个单元格如何将整行整列变色
视图->阅读模式 开启阅读模式后 就会显示如下情景,是的你点击任意单元格后,显示整行/整列
- 批大小、mini-batch、epoch的含义
每次只选取1个样本,然后根据运行结果调整参数,这就是著名的随机梯度下降(SGD),而且可称为批大小(batch size)为 1 的 SGD. 批大小,就是每次调整参数前所选取的样本(称为mini-b ...
- deecms栏目页调用自定义字段方法
{dede:arclist addfields='suoxu_jifen,shichang_jiage' typeid='13' row='15' channelid='3'} <li>& ...
- @RestController的用法
我一直都不太理解RESTFUL风格但是先记住一些基本用法在深入吧 ** * * 在服务端应用程序状态和功能可以分成各种资源,每一个资源都使用URL 得到一个唯一的地址,所有资源都共享统一的 * 接口, ...
- 鸿蒙内核源码分析(调度机制篇) | 任务是如何被调度执行的 | 百篇博客分析OpenHarmony源码 | v7.07
百篇博客系列篇.本篇为: v07.xx 鸿蒙内核源码分析(调度机制篇) | 任务是如何被调度执行的 | 51.c.h .o 任务管理相关篇为: v03.xx 鸿蒙内核源码分析(时钟任务篇) | 触发调 ...
- python读Excel方法(xlrd)
在我们做平常工作或自动化测试中都会遇到操作excel,Python处理exc相当顺手,如何通过python操作excel,当然python操作excel的库有很多,比如pandas,xlwt/xlrd ...
- ElasticSearch搜索引擎
官网:Elasticsearch:官方分布式搜索和分析引擎 | Elastic Elaticsearch,简称为es,es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储.检索数据;本身扩 ...