cpu性能以及nanosleep
1.
windows上的sleep最小间隔可以精确到1ms,但是linux上sleep函数需要注意几个地方:
1,usleep(int microseconds)是旧式API,虽然参数是微妙,但是在linux系统上如果间隔低于10毫秒,死循环的CPU占用率仍然很高,如果要用usleep,间隔最小值必须设置为10ms,10000微妙。windows上不存在这种问题,只要sleep的间隔有1ms,死循环CPU占用率很低。
2,kernel 2.0之后才提供了一个新版API:nanosleep(int microseconds),这个API才可以将间隔时间控制在微秒级。
参考
http://tldp.org/HOWTO/IO-Port-Programming-4.html
2.
nanosleep的取值限制问题可能导致cpu过高,可参考
https://blog.csdn.net/s_ddwqwd/article/details/82788838
3.
ps -eLo pid,lwp,pcpu |grep pid
配合pstack查找性能问题比较方便
4.
std sleep_for 和 usleep对比,测试结果:
1 67 usleep2 74 sleep_for3 62 usleep4 61 sleep_for5 60 usleep6 60 sleep_for7 60 usleep8 60 sleep_for9 61 usleep10 60 sleep_for11 62 usleep12 60 sleep_for13 60 usleep14 60 sleep_for15 60 usleep16 60 sleep_for17 60 usleep18 61 sleep_for19 61 usleep20 60 sleep_for
std::this_thread::sleep_for(std::chrono::microseconds(5));
usleep(5);
25 for (int i = 0; i < 10; i++){26 27 gettimeofday(&tv,&tz);28 int64_t v = tv.tv_sec * 1000000 + tv.tv_usec;29 30 usleep(5);31 32 gettimeofday(&tv1,&tz1);33 int64_t v1 = tv1.tv_sec * 1000000 + tv1.tv_usec;34 cout << v1 - v << " usleep" << endl;35 36 }
没什么大的差异,cpu占用上,sleep_for线程偏高,高于1-几倍吧,稳定性差,具体原因待分析
cpu性能以及nanosleep相关推荐
- 20线程测试cpu性能软件,CPU常用跑分软件 你知道那些?
跑分测试是检测硬件性能的重要手段,但毕竟需要专业测试软件,很多小伙伴对于测试软件一头雾水,不知道有哪些测试软件,本次笔者就给大家科普一下CPU测试中常用的测试软件,帮助大家更好的了解自己电脑的性能. ...
- windows CPU性能监控命令
windows CPU性能监控命令 分别为用户CPU时间 系统CPU时间 总CPU时间 typeperf "\Processor(_Total)\% User Time" & ...
- 如何最大化利用CPU性能创作沉浸式VR体验
-- 本文来自英特尔游戏开发部门的 Justin Link -- 在三年多的时间,我有幸负责管理一家名为Chronosapien的工作室,而我们主要是通过新兴技术组件来创建交互式内容.我们涉足了大量不 ...
- cpu性能排名学习笔记
笔记本cpu性能天梯图: https://www.zhihu.com/question/411017637/answer/1759530444 笔记本cpu性能天梯图2: https://zhuanl ...
- CPU缓存与CPU性能的关系
说到CPU,不得不说的就是CPU缓存,目前CPU的缓存已经成了衡量CPU性能的一个必要指标,那么CPU缓存到底对CPU性能的影响有多大呢? 我们知道,CPU执行指令时,会将执行结果放在一个叫" ...
- AIX系统CPU性能评估-1
作者:Peak Wong出处:IT专家网2008-05-08 17:21 本文对cpu性能的命令作了详细介绍,并给出了对于系统cpu监控的建议. 1.vmstat 使用vmstat来进行性能评估,该命 ...
- AMD Cpu 性能分析
未完待续... 首先,几款APU系列的cpu: A8-7410: 一款低功耗的移动版处理器,四核心主频最高2.5GHz,二级缓存2MB, 图形核心Radeon R5 内存频率DDR3-1866,热设计 ...
- 12 | 套路篇:CPU 性能优化的几个思路
上一节我们一起回顾了常见的 CPU 性能指标,梳理了核心的 CPU 性能观测工具,最后还总结了快速分 析 CPU 性能问题的思路.虽然 CPU 的性能指标很多,相应的性能分析工具也很多,但理解了各种指 ...
- Raspberry Pi 3 计算模块,CPU性能提高了十倍
树莓派(Raspberry Pi)正式推出全新一代计算模块(Compute Module 3,以下简称CM3),与树莓派3采用的是同款处理器. Raspberry Pi 3 计算模块与树莓派3一样搭载 ...
最新文章
- 探讨 | 目前SLAM存在的问题
- .net中close和dispose及关闭流操作
- 快排,归并和Shell排序
- Java编程中写出好代码的建议(转发)
- ORA-01919: role 'OLAPI_TRACE_USER' does not exist
- (195)FPGA上电后IO的默认状态(ISE软件默认为1)
- css3 js 做一个旋转音乐播放开关
- matlab中的uigetfile函数和setappdata函数
- ASME Y14.5 2018重要更新
- 开机广告页面2017流行样式 dialogTheme的popuwindow版本
- 谨以此文,献给我的大学四年—双非本科到双一流985的成长之路
- 光模块单模和多模的区别
- 微信公众号服务器搭建
- The Generalized Detection Method for the Dim Small Targets by Faster R-CNN Integrated with GAN 论文翻译
- 运行日志Log文件c++实现
- 速卖通教你如何提升店铺转化率——测评补单
- 搬运收藏-Android各种库
- react+antd解决报错:Module not found: Can't resolve 'antd/es/affix'
- 中文文件如何翻译为英文
- HTML下拉框选择事件
热门文章
- 【ML】numpy meshgrid函数使用说明(全网最简单版)
- 线程池ThreadPool中QueueUserWorkItem的使用
- 绿色环保又节能,软件开发居然也可以
- suse服务器修改ip,SuSE Linux 修改网卡配置 |SUSE Linux 单网卡配置双IP
- 人人都可直播带货,即构科技携手万商之家打造低门槛直播服务平台
- 北京地铁,2号线换乘13号线,用时最短换乘线路
- 无意中发现看书也是一种美
- uniapp微信js-sdk使用封装
- python中的clamp 函数
- 图算法(二十五):子图匹配(Subgraph Matching)【基本的图查询操作,意在发掘图重要的子结构】【适用场景:社交网络分析、群体发现、异常检测】【在一个给定的大图里找到与给定小图同构的子图】