关于在centos6 + grub的旧版本中,如何关闭CPU throttling
由于个人需求,要编译安装ATLAS库,其中就有关闭CPU throttling的步骤,
最常规简单的方法是修改grub
/etc/default/grub/
之后再接一些简单的步骤 + 重启就完成了。
刚开始看到的时候,我自觉轻松,很快就能完成了,但很快就懵逼了。
由于系统上的grub不是2,根本没有/etc/default/grub/这玩意,什么update-grub之类自不必说了。
我研究了很久之后,尝试修改/boot/grub/menu.lst,然后当然依然是无果,那是相当的绝望。。。
所幸,最终重新尝试利用软件cpufrequtils,得到想要的效果,特此总结一下。
一. 查看途径
1. cat /proc/cpuinfo
(BTW, cat /proc/cpuinfo | grep "cpu MHz",光只是查看cpu频率)
model name : Intel(R) Xeon(R) CPU E5-1620 v2 @ 3.70GHz
stepping : 4
microcode : 1064
cpu MHz : 3701.000
上面是3.7GHz, 下面显示的cpu MHz也是3700Hz, 表明已经关闭CPU throttling;
2. cat /proc/acpi/processor/CPU0/info
processor id: 0
acpi id: 0
bus mastering control: yes
power management: no
throttling control: yes
limit interface: yes
利用cpufreq-selector修改之后, 这里的throttling control仍然是yes, 但是ATLAS可以成功安装。
我觉得或许还是需要改变grub启动配置。
但是系统和grub都为旧版本, 找不到合适的关闭方法, 只能先追求完成目标。
3. cpufreq-info
我的环境并cpufreq的查看并不是这个指令, 具体暂不详。
--参考链接:https://www.thegeekdiary.com/how-to-check-if-cpu-throttling-is-enabled-on-centos-rhel-6/
https://blog.csdn.net/lostman80/article/details/10454447
二. 关闭途径
1. 修改开机启动项(不知道何种问题,并不行)
1.1 对于旧版的grub
sudo vim /boot/grub/menu.lst
//在其中加上intel_pstate=disable
sudo reboot
1.2 对于新版的grub2
Edit /etc/default/grub
Find line with: GRUB_CMDLINE_LINUX_DEFAULT
Append the following to args: intel_pstate=disable
Update grub: update-grub (在centos中并不是如此,很容易百度)
Reboot
这种方法,失败了。
2. 安装cpufrequtils, 使用此软件帮助修改
可能是cpufreq-selector, 也有可能是cpufreq-set,
我的环境是cpufreq-selector;
/usr/bin/cpufreq-selector -g performance -c 0
/usr/bin/cpufreq-selector -g performance -c 1
......
/usr/bin/cpufreq-selector -g performance -c n
另外的方法:
先
运行/usr/bin/cpufreq-selector -g performance -c 0
再
cp /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
......
cp /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor /sys/devices/system/cpu/cpuN/cpufreq/scaling_governor
(这种尝试过, 但是失败)
如无相应软件, 可用apt-get或者yum(OS而定)进行安装, 例:
sudo apt-get install cpufrequtils
3. 修改BIOS
并未作尝试, 这个不太熟悉, 感觉比较危险;
4. 一些查到的, 未知具体含义的指令
sudo service cpuspeed stop
pupower frequency-set -g
performance, sudo cpupower frequency-set -d 2000000
这些都没能解决当前环境的问题, 并且完全不明白, 也是个例。
但记录下来, 可能在别的环境下需要用到。
4的来源链接:https://unix.stackexchange.com/questions/324710/how-to-disable-cpu-frequency-scaling-in-centos-6
关于在centos6 + grub的旧版本中,如何关闭CPU throttling的更多相关文章
- 在java中使用solr7.2.0 新旧版本创建SolrClient对比
在Java中使用solr 版本7.2.0 solrj已经更新到了7.2.0,新版本solr获取SolrClient的方式也和之前旧版本有所不同 solr6.5开始不推荐直接使用HttpSolrClie ...
- Windows11中如何使用旧版本IE浏览器打开网页
Windows11删除了旧版本IE浏览器,完全采用了Edge,但是我们进行网站测试时有时仍会用到IE浏览器,那么可以按照以下步骤启用: 1.进入Edge浏览器中,打开设置,进入默认浏览器选项下: 修改 ...
- CentOS6.x升级MySQL版本5.1到5.6
CentOS6.x升级MySQL版本5.1到5.6 分类: Web MySQL 2014-08-04 11:22 2813人阅读 评论(1) 收藏 举报 mysql云服务器升级centos6 有一些虚 ...
- ASP.NET 5 DNX SDK删除旧版本
ASP.NET 5各种升级后旧版本的DNX不会删除,想删除旧版本的DNX,可以通过以下命令完成 首先打开CMD或者Powershell 1.先输入dnvm看看命令中是否有uninstall 2.如果没 ...
- OpenGL2.0及以上版本中glm,glut,glew,glfw,mesa等部件的关系
OpenGL2.0及以上版本中gl,glut,glew,glfw,mesa等部件的关系 一.OpenGL OpenGL函数库相关的API有核心库(gl),实用库(glu),辅助库(aux).实用工具库 ...
- coreData旧版本增加字段,新版本是否可以继续使用旧版本内容的测试(MagicalRecord的使用)
coreData使用第三方库MagicalRecord, 参考文章:http://blog.csdn.net/kuizhang1/article/details/21200367 coreData数据 ...
- C#winform程序安装时自动卸载新版本覆盖旧版本
vs2005为winform程序做的安装包.在以有程序旧版本的机子上用新版本的安装包安装软件时提示 “以经安装该产品的另一个版本.无法继续安装此版本........” 在安装部署项目中设“Remov ...
- 导入旧版本Android项目时的“Unable to resolve target ‘android
在Ecplise + ATD + Android SDK的开发中,导入旧版本的Android项目时,往往会出现类似的如下错误 Error:Unable to resolve target 'andro ...
- 安装AD15有问题多数是因为旧版本AD软件没有卸载干净,清理方法详解
论坛中总会看到有些朋友安装AD14.x,AD15.x后,使用不正常,多数情况是因为旧版本的AD软件没有卸载干净,安装新版本AD软件后,就会有问题.卸载和清理AD旧版本软件的方法如下(此方法只能解决卸载 ...
随机推荐
- .Net Core 没有 WebForm 是 历史 的 退步, MVC 是一个 糟糕 的 设计
WebForm 自面世以来, 广受广大开发人员的欢迎 . 当然, WebForm 有一些 著名的 弊病, 比如 笨重的 ViewState . 不过 我们 可以 用 一些 更加 先进 和 灵巧 的 ...
- 密码疑云 (2)——RSA加密机制需要的数学知识
在公钥密码体制提出不久,人们就找到其中的三种,其中最著名的当属RSA体制.RSA是一种非对称加密体制,在公开密钥加密和电子商业中被广泛使用.RSA是1977年由罗纳德·李维斯特(Ron Rivest) ...
- python selenium-webdriver 登录验证码的处理(十二)
很多系统为了防止坏人,会增加各样形式的验证码,做测试最头痛的莫过于验证码的处理,验证码的处理一般分为三种方法 1.开发给我们设置一个万能的验证码: 2.开发将验证码给屏蔽掉: 3.自己识别图片的上的千 ...
- operator用法:隐式类型转换
operator它有两种用法,一种是operator overloading(操作符重载),一种是operator casting(操作隐式转换). 1.操作符重载C++可以通过operator实现重 ...
- 作业-haproxy配置文件的增删查(有一个bug不知道咋改)
# yangqiao #查询 ''' f=open("C:\\aaaaaaaaaaaaa\\haproxy.txt", "r", encoding=" ...
- 关于eth0 eth0:1 和eth0.1关系介绍
eth0 eth0:1 和eth0.1三者的关系对应于物理网卡.子网卡.虚拟VLAN网卡的关系:物理网卡:物理网卡这里指的是服务器上实际的网络接口设备,这里我服务器上双网卡,在系统中看到的2个物理网卡 ...
- Java核心-多线程-并发控制器-Exchanger交换器
1.基本概念 Exchanger,从名字上理解就是交换.Exchanger用于在两个线程之间进行数据交换,注意也只能在两个线程之间进行数据交换. 线程会阻塞在Exchanger的exchange方法上 ...
- html字体加大标签与写法介绍
在html中字体加大的标签为<big>,一般用于重要文字,醒目文字,让用户容易看到! 字体加大: <big>写上你想写的字</big> 效果:未加大 加大 效果中 ...
- Mysql8.0导入数据时出错
在Windows操作系统下,使用命令行将已经创建好的txt文件导入到mysql的pet表中. 出现ERROR 1148 (42000): The used command is not allowed ...
- Linux下自己实现getopt功能
实现思路: 通过 pid_t pid = getpid() 来获取当前进程id,然后 sprintf(fname, "/proc/%d/cmdline", pid); 读取fnam ...