基于Tensorflow:CPU性能分析
iostat
iostat用于输出CPU和磁盘I/O相关的统计信息.
命令格式:
1)显示所有设备负载情况
指令: iostat -m 2 5
cpu属性值说明:
%user:CPU处在用户模式下的时间百分比。
%nice:CPU处在带NICE值的用户模式下的时间百分比。
%system:CPU处在系统模式下的时间百分比。
%iowait:CPU等待输入输出完成时间的百分比。
%steal:管理程序维护另一个虚拟处理器时,虚拟CPU的无意识等待时间百分比。
%idle:CPU空闲时间百分比。
备注:如果%iowait的值过高,表示硬盘存在I/O瓶颈,%idle值高,表示CPU较空闲,如果%idle值高但系统响应慢时,有可能是CPU等待分配内存,此时应加大内存容量。%idle值如果持续低于10,那么系统的CPU处理能力相对较低,表明系统中最需要解决的资源是CPU。
2)查看设备使用率(%util)、响应时间(await)
**指令:**iostat -d -x -k 2 5
disk属性值说明:
rrqm/s: 每秒进行 merge 的读操作数目。即 rmerge/s
wrqm/s: 每秒进行 merge 的写操作数目。即 wmerge/s
r/s: 每秒完成的读 I/O 设备次数。即 rio/s
w/s: 每秒完成的写 I/O 设备次数。即 wio/s
rsec/s: 每秒读扇区数。即 rsect/s
wsec/s: 每秒写扇区数。即 wsect/s
rkB/s: 每秒读K字节数。是 rsect/s 的一半,因为每扇区大小为512字节。
wkB/s: 每秒写K字节数。是 wsect/s 的一半。
avgrq-sz: 平均每次设备I/O操作的数据大小 (扇区)。
avgqu-sz: 平均I/O队列长度。
await: 平均每次设备I/O操作的等待时间 (毫秒)。
svctm: 平均每次设备I/O操作的服务时间 (毫秒)。
%util: 一秒中有百分之多少的时间用于 I/O 操作,即被io消耗的cpu百分比
备注:如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。如果 svctm 比较接近 await,说明 I/O 几乎没有等待时间;如果 await 远大于 svctm,说明I/O 队列太长,io响应太慢,则需要进行必要优化。如果avgqu-sz比较大,也表示有当量io在等待。
以上这篇基于Tensorflow:CPU性能分析就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
tensorflow2.0与tensorflow1.0的性能区别介绍
从某种意义讲,tensorflow这个项目已经失败了,要不了几年以后,江湖上再无tensorflow 因为tensorflow2.0 和tensorflow1.0 从本质上讲就是两个项目,1.0的静态图有他的优势,比如性能方面,但是debug不方便,2.0的动态图就是在模仿pytorch,但是画虎不成反类犬. 为了对比1.0 与2.0 1. pip install tensorflow==2.0.0a0 2. 为了控制变量我把mnist保存到本地的mongodb 3. 两种网络结构是一样的 ip
-
Tensorflow限制CPU个数实例
安装 这里使用 Pip 来安装 Tensorflow CPU 版 $ sudo pip install https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.5.0-cp27-none-linux_x86_64.whl 安装完成后运行库中自带的手写识别例子来检查安装是否成功 $ cd /usr/lib/python2.7/site-packages/tensorflow/models/image/mnist $ pyth
-
关于Tensorflow使用CPU报错的解决方式
如下所示,简单明了,希望能帮助到你 解决: Operation was explicitly assigned to /device:GPU:0 but available devices are [ /job:localhost/replica:0/task:0/cpu:0 ]. tf.app.Flags.DEFINE_boolean('clone_on_cpu',False,'use CPUs to deploy clones.') 改为: tf.app.Flags.DEFINE_boole
-
基于Tensorflow使用CPU而不用GPU问题的解决
之前的文章讲过用Tensorflow的object detection api训练MobileNetV2-SSDLite,然后发现训练的时候没有利用到GPU,反而CPU占用率贼高(可能会有Could not dlopen library 'libcudart.so.10.0'之类的警告).经调查应该是Tensorflow的GPU版本跟服务器所用的cuda及cudnn版本不匹配引起的.知道问题所在之后就好办了. 检查cuda和cudnn版本 首先查看cuda版本: cat /usr/local/
-
解决Tensorflow 使用时cpu编译不支持警告的问题
使用TensorFlow模块时,弹出错误Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX AVX2 原因是下载TensorFlow的版本不支持cpu的AVX2编译. 可能是因为安装时使用的pip install tensorflow ,这样默认会下载X86_64的SIMD版本. 有两种解决办法: 1.忽略这个警告,不看它! import os os.environ["TF
-
基于Tensorflow:CPU性能分析
iostat iostat用于输出CPU和磁盘I/O相关的统计信息. 命令格式: 1)显示所有设备负载情况 指令: iostat -m 2 5 cpu属性值说明: %user:CPU处在用户模式下的时间百分比. %nice:CPU处在带NICE值的用户模式下的时间百分比. %system:CPU处在系统模式下的时间百分比. %iowait:CPU等待输入输出完成时间的百分比. %steal:管理程序维护另一个虚拟处理器时,虚拟CPU的无意识等待时间百分比. %idle:CPU空闲时间百分比. 备
-
Java CPU性能分析工具代码实例
这篇文章主要介绍了Java CPU性能分析工具代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 背景 有处理过生产问题的同学基本都能遇到系统忽然缓慢,CPU突然飙升,甚至整个应用请求不可用.当出现这种情况下,在不影响数据准确性的前提下,我们应该尽快导出jstack和内存信息,然后重启系统,尽快回复系统的可用性,避免用户体验过差.本文针对CPU飙升问题,提供该问题的排查思路,从而能够快速定位到某线程甚至某快代码导致CPU飙升,从而提供处理该
-
Go 库性能分析工具pprof
目录 场景 pprof 生成 profile 文件 CPU 性能分析 内存性能分析 分析 profile 文件 && 优化代码 go tool pprof top 命令 list 命令 总结 场景 我们一般没必要过度优化 Go 程序性能.但是真正需要时,Go 提供的 pprof 工具能帮我们快速定位到问题.比如,我们团队之前有一个服务,在本地和测试环境没问题,一到灰度环境,就报 cpu 负载过高,后经排查,发现某处代码死循环了.我把代码简化成如下: // 处理某些业务,真实的代码中这个死循
-
go性能分析工具pprof的用途及使用详解
目录 pprof的用途 利用runtime/pprof包实现cpu分析的步骤 利用runtime/pprof包实现内存分析的步骤: 利用net/http/pprof包进行性能分析 总结 pprof的用途 CPU Profiling:CPU 分析,按照一定的频率采集所监听的应用程序 CPU(含寄存器)的使用情况,可确定应用程序在主动消耗CPU 周期时花费时间的位置 Memory Profiling:内存分析,在应用程序进行堆分配时记录堆栈跟踪,用于监视当前和历史内存使用情况,以及检查内存泄漏 Bl
-
.NET Visual Studio 代码性能分析工具
下面通过图文并茂的方式给大家介绍下,具体内容如下: 软件开发中的性能优化对程序员来说是一个非常重要的问题.一个小问题可能成为一个大的系统的瓶颈.但是对于程序员来说,通过自身去优化代码是十分困难的.幸运的是,有一些非常棒的工具可以帮助程序员进行代码分析和性能测试,从而大大简化程序员进行代码性能优化的过程.MSDN杂志2011年7月份曾发布主题为".NET代码分析工具和技术"的那一期,让广大程序员收获颇丰.四年过去之后,这些工具又进一步做出了很多改进,同时也出现了更多的选择.本文对当前主流
-
php轻量级的性能分析工具xhprof的安装使用
一.前言 有用的东西还是记录下来吧,也方便以后的查询:这次记录一下xhprof的安装使用: xhprof是facebook开源出来的一个php轻量级的性能分析工具,跟Xdebug类似,但性能开销更低, 还可以用在生产环境中,也可以由程序开 关来控制是否进行profile. 二.安装 wget http://pecl.php.net/get/xhprof-0.9.3.tgz tar zxf xhprof-0.9.3.tgz cd xhprof-0.9.3/extension /usr/bin/ph
-
.NET Visual Studio 代码性能分析工具
下面通过图文并茂的方式给大家介绍下,具体内容如下: 软件开发中的性能优化对程序员来说是一个非常重要的问题.一个小问题可能成为一个大的系统的瓶颈.但是对于程序员来说,通过自身去优化代码是十分困难的.幸运的是,有一些非常棒的工具可以帮助程序员进行代码分析和性能测试,从而大大简化程序员进行代码性能优化的过程.MSDN杂志2011年7月份曾发布主题为".NET代码分析工具和技术"的那一期,让广大程序员收获颇丰.四年过去之后,这些工具又进一步做出了很多改进,同时也出现了更多的选择.本文对当前主流
-
Python判断列表是否已排序的各种方法及其性能分析
声明 本文基于Python2.7语言,给出判断列表是否已排序的多种方法,并在作者的Windows XP主机(Pentium G630 2.7GHz主频2GB内存)上对比和分析其性能表现. 一. 问题提出 Haskell培训老师提出一个问题:如何判断列表是否已经排序? 排序与否实际只是相邻元素间的某种二元关系,即a->a->Bool.所以第一步可以把二元组列表找出来:第二步是把这个函数作用于每个元组,然后用and操作.老师给出的实现代码如下: pair lst = zip lst ( tail
-
PHP性能分析工具XHProf安装使用教程
HProf是facebook开源出来的一个php轻量级的性能分析工具,跟Xdebug类似,但性能开销更低,还可以用在生产环境中,也可以由程序开关来控制是否进行profile.基于浏览 器的性能分析用户界面能更容易查看,或是与同行们分享成果.也能绘制调用关系图.在数据收集阶段,它记录调用次数的追踪和包容性的指标弧在动态callgraph的一个程序. 它独有的数据计算的报告/后处理阶段.在数据收集时,XHProfd通过检测循环来处理递归的函数调用,并通过给递归调用中每个深度的调用一个有用的命名来避开
随机推荐
- xajax的FORM例子
- Python3学习笔记之列表方法示例详解
- httpd.conf 二级域名设置方法
- asp.net使用FCK编辑器中的分页符实现长文章分页功能
- 深入理解swift变量和函数
- Js实现当前点击a标签变色突出显示其他a标签回复原色
- php实现斐波那契数列的简单写法
- linux下防火墙开启某个端口号及防火墙常用命令使用(详解)
- 深入MYSQL字符数字转换的详解
- Chrome下ifame父窗口调用子窗口的问题示例探讨
- C#字符串内存分配与驻留池学习分享
- 本地 二级域名配置方法
- jQuery中用dom操作替代正则表达式
- 在表单提交前进行验证的几种方式整理
- ASP.NET oledb连接Access数据库的方法
- spring cloud将spring boot服务注册到Eureka Server上的方法
- vue 插值 v-once,v-text, v-html详解
- Spring Cloud 请求重试机制核心代码分析
- java接口中的代理设计模式代码时实践
- JavaScript中Dom操作实例详解