亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Linux動態(tài)啟用/禁用超線程技術的方法詳解

 更新時間:2019年07月05日 16:46:22   作者:tlanyan  
這篇文章主要給大家介紹了關于Linux動態(tài)啟用/禁用超線程技術的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Linux系統(tǒng)具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧

前言

intel的超線程技術能讓一個物理核上并行執(zhí)行兩個線程,大多數情況下能提高硬件資源的利用率,增強系統(tǒng)性能。對于cpu密集型的數值程序,超線程技術可能會導致整體程序性能下降。鑒于此,執(zhí)行OpenMP或者MPI數值程序時建議關閉超線程技術。

以下是github上找到的動態(tài)打開、關閉超線程技術的腳本。其原理是根據/sys/devices/system/cpu/cpuX/topology/thread_siblings_list文件找到邏輯核的關系,然后編輯/sys/devices/system/cpu/cpuX/online文件實現動態(tài)開啟和關閉超線程技術。

#!/bin/bash

HYPERTHREADING=1

function 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.";;
  esac
done

備注:

  1. 腳本需root權限執(zhí)行;
  2. 可以通過cat /proc/cpuinfo查看啟用的cpu信息,該命令無需root權限;
  3. lscpu命令可查看cpu的狀態(tài)(無需root權限):超線程狀態(tài)下threads per core數值為2,禁用時為1.

參考

Disable / Enable HyperThreading cores on runtime – linux

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。

相關文章

  • Centos7下面如何配置靜態(tài)IP

    Centos7下面如何配置靜態(tài)IP

    本篇文章主要介紹了Centos7下面如何配置靜態(tài)IP,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • linux中 shell 歷史命令記錄功能

    linux中 shell 歷史命令記錄功能

    這篇文章主要介紹了在 Linux 下面可以使用 history 命令查看用戶的所有歷史操作的一些詳細配置小技巧,非常的簡單實用,有需要的朋友可以參考下
    2014-10-10
  • Linux利用Shell腳本部署jar包項目的完整步驟

    Linux利用Shell腳本部署jar包項目的完整步驟

    這篇文章主要給大家介紹了關于Linux如何利用Shell腳本部署jar包項目的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-12-12
  • 詳解如何實現Linux服務Crash后自動重啟

    詳解如何實現Linux服務Crash后自動重啟

    近期碰到了一個?Linux?Systemd?服務?Crash,?Crash?后需要人工介入重啟.?那么,?有沒有辦法如何實現?Linux?服務?Crash?后自動重啟,下面就來和大家分享一下
    2023-08-08
  • Linux中的curl命令詳解

    Linux中的curl命令詳解

    大家應該都知道在Linux中curl是一個利用URL規(guī)則在命令行下工作的文件傳輸工具,可以說是一款很強大的http命令行工具。它支持文件的上傳和下載,是綜合傳輸工具,但按傳統(tǒng),習慣稱url為下載工具。本文將詳細介紹Linux中的curl命令,下面來一起看看吧。
    2016-11-11
  • Linux命令學習總結:詳解shutdown命令

    Linux命令學習總結:詳解shutdown命令

    本篇文章主要介紹了Linux命令學習總結:詳解shutdown命令,該命令可以安全關閉或者重新啟動系統(tǒng)。有興趣的可以了解一下。
    2016-12-12
  • cloudstack下libvirtd服務無響應問題

    cloudstack下libvirtd服務無響應問題

    這篇文章主要介紹了cloudstack下libvirtd服務無響應問題的相關資料,需要的朋友可以參考下
    2016-10-10
  • PHP程序員玩轉Linux系列 Nginx中的HTTPS詳解

    PHP程序員玩轉Linux系列 Nginx中的HTTPS詳解

    這篇文章主要為大家詳細介紹了PHP程序員玩轉Linux系列文章,MySQL備份還原教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • Linux運維基礎進程管理及環(huán)境組成分析

    Linux運維基礎進程管理及環(huán)境組成分析

    這篇文章主要為大家介紹了Linux運維基礎,對其中進程管理及環(huán)境組成分析作了詳細的分析,有需要的朋友可以借鑒參考下,希望可以有所幫助
    2021-09-09
  • Apache禁止域名惡意指向網站的方法

    Apache禁止域名惡意指向網站的方法

    默認網站是可以通過ip訪問的,所以可能會有些惡意的域名指向你的網站,下面與大家分享下Apache如何禁止域名惡意指向,比較實用,需要的朋友可以參考下
    2014-09-09

最新評論