日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
Linux動(dòng)態(tài)啟用/禁用超線程技術(shù)的方法詳解

前言

intel的超線程技術(shù)能讓一個(gè)物理核上并行執(zhí)行兩個(gè)線程,大多數(shù)情況下能提高硬件資源的利用率,增強(qiáng)系統(tǒng)性能。對(duì)于cpu密集型的數(shù)值程序,超線程技術(shù)可能會(huì)導(dǎo)致整體程序性能下降。鑒于此,執(zhí)行OpenMP或者M(jìn)PI數(shù)值程序時(shí)建議關(guān)閉超線程技術(shù)。

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

#!/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權(quán)限執(zhí)行;
  2. 可以通過(guò)cat /proc/cpuinfo查看啟用的cpu信息,該命令無(wú)需root權(quán)限;
  3. lscpu命令可查看cpu的狀態(tài)(無(wú)需root權(quán)限):超線程狀態(tài)下threads per core數(shù)值為2,禁用時(shí)為1.

參考

Disable / Enable HyperThreading cores on runtime – linux

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)的支持。

成都創(chuàng)新互聯(lián)科技有限公司,經(jīng)過(guò)多年的不懈努力,公司現(xiàn)已經(jīng)成為一家專(zhuān)業(yè)從事IT產(chǎn)品開(kāi)發(fā)和營(yíng)銷(xiāo)公司。廣泛應(yīng)用于計(jì)算機(jī)網(wǎng)絡(luò)、設(shè)計(jì)、SEO優(yōu)化、關(guān)鍵詞排名等多種行業(yè)!


當(dāng)前題目:Linux動(dòng)態(tài)啟用/禁用超線程技術(shù)的方法詳解
網(wǎng)頁(yè)路徑:http://www.5511xx.com/article/dhcisjg.html