Linux动态启用/禁用超线程技术的方法详解(linux动态执行命令)

admin3年前云主机72

前言

intel的超线程技术能让一个物理核上并行执行两个线程,大多数情况下能提高硬件资源的利用率,增强系统性能。对于cpu密集型的数值程序,超线程技术可能会导致整体程序性能下降。鉴于此,执行OpenMP或者MPI数值程序时建议关闭超线程技术。

以下是github上找到的动态打开、关闭超线程技术的脚本。其原理是根据/sys/devices/system/cpu/cpuX/topology/thread_siblings_list文件找到逻辑核的关系,然后编辑/sys/devices/system/cpu/cpuX/online文件实现动态开启和关闭超线程技术。

#!/bin/bashHYPERTHREADING=1function toggleHyperThreading() { for CPU in /sys/devices/system/cpu/cpu[0-9]*; do CPUID=`basename $CPU | cut -b4-` echo -en "CPU: $CPUID\t" [ -e $CPU/online ] && echo "1" > $CPU/online THREAD1=`cat $CPU/topology/thread_siblings_list | cut -f1 -d,` if [ $CPUID = $THREAD1 ]; then echo "-> enable" [ -e $CPU/online ] && echo "1" > $CPU/online else if [ "$HYPERTHREADING" -eq "0" ]; then echo "-> disabled"; else echo "-> enabled"; fi echo "$HYPERTHREADING" > $CPU/online fi done}function enabled() { echo -en "Enabling HyperThreading\n" HYPERTHREADING=1 toggleHyperThreading}function disabled() { echo -en "Disabling HyperThreading\n" HYPERTHREADING=0 toggleHyperThreading}#ONLINE=$(cat /sys/devices/system/cpu/online)OFFLINE=$(cat /sys/devices/system/cpu/offline)echo "---------------------------------------------------"echo -en "CPU's online: $ONLINE\t CPU's offline: $OFFLINE\n"echo "---------------------------------------------------"while true; do read -p "Type in e to enable or d disable hyperThreading or q to quit [e/d/q] ?" ed case $ed in [Ee]* ) enabled; break;; [Dd]* ) disabled;exit;; [Qq]* ) exit;; * ) echo "Please answer e for enable or d for disable hyperThreading.";; esacdone

备注:

  1. 脚本需root权限执行;
  2. 可以通过cat /proc/cpuinfo查看启用的cpu信息,该命令无需root权限;
  3. lscpu命令可查看cpu的状态(无需root权限):超线程状态下threads per core数值为2,禁用时为1.

参考

Disable / Enable HyperThreading cores on runtime – linux

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对站长源码网的支持。

《Linux动态启用/禁用超线程技术的方法详解(linux动态执行命令)》来自互联网同行内容,若有侵权,请联系我们删除!

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

如何保障香港云服务器的安全性(保障香港云服务器安全的措施)

随着互联网技术的不断发展,云计算服务越来越普及,而云服务器安全问题也随之成为一个重要的话题。尤其是在香港这样一个金融和商业中心,云服务器的安全问题尤其需要引起关注。本文将从以下四个方面阐述如何保障香港...

centos7下无法成功修改hostname怎么办(centos7无法安装软件)

centos7下无法成功修改hostname的原因是:修改文件后没有重启系统。(inhv.cn)修改步骤如下:需要修改两处:一处是/etc/sysconfig/network,另一处是/etc/hos...

海口网站建设公司

海口网站建设公司随着网络的快速发展,越来越多的企业开始意识到互联网的重要性。作为企业展示形象的窗口,网站不仅能够向更多的人口展示企业的形象,更能通过网络营销将企业的产品和服务推广给更多的市场和客户。因...

关于wordpress网址导航的信息

找服务器给各位分享wordpress网址导航知识,如有帮助,请关注我们!本文目录:1、如何用wordpress实现导航页2、如何用wordpress建网址导航3、wordpress导航问题如何用wor...

搬瓦工官网上不了

搬瓦工官网上不了·解决方法搬瓦工被广大网友誉为良心VPS之一,但是网站经常不能访问确实让不少用户束手无策。本文将向您详细介绍搬瓦工官网打不开的解决方法。检查网络连接访问搬瓦工官网时,首先要确保自己的网...

ubuntu做虚拟主机

什么是虚拟主机?虚拟主机是指在一台服务器上划分出多个独立的虚拟空间,每个虚拟空间拥有自己的域名、访问控制、磁盘空间、带宽等资源。虚拟主机将服务器资源分配给多个用户使用,从而实现了多用户共享主机资源的服...