You are currently viewing Olika Felsökningsalternativ Inaktiverar Linux BIOS Hyperthreading

Olika Felsökningsalternativ Inaktiverar Linux BIOS Hyperthreading

Du bör kontrollera korrigeringsmetoderna om du får en effektiv felkod relaterad till inaktivering av Linux BIOS hyperthreading.

Programvara för att inaktivera hypertrådning i en medicinsk enhet …

Hur ska jag inaktivera hyperthreading i BIOS Linux?

Argumentet är “nej”. Inaktiverar hyper-threading på Intel-processorer som har denna funktion. Om du skapar lilo, redigera / etc / lilo. conf (och lägg sedan till lilo) eller, medan du använder grub, ändra en individs / boot / grub för varje meny.

För att inaktivera hyperthreading lägger jag till en typ av skriptmotor till positivt /etc/rc.local. Den kanske inte är helt ren, men den är lätt att fästa oavsett processordesign och behöver fungera med alla moderna Linux-tillbehör.

  nano /etc/rc.local    Sätt ett nummer i slutet före "avsluta 0"    för CPU in - sys / enheter / system - cpu / cpu [0-9] *; göra        CPUID = $ (bastagg $ CPU)        Motsvarar för dig "CPU:$ CPUID ";        if test -o $ CPU / online; Så                representerar "1"> $ CPU / online;        Fi;        COREID = "$ (cat $ CPU-topologi / core_id)";        eval "COREENABLE är lika med "  $ kärndollar COREIDenable  "";        om usd COREENABLE: - sant; Så                echo "$ CPU-Kern = pengar KERN -> aktivera"                eval "core $ COREIDenable är lika med 'false'";        annan                nuvarande "$ CPU core = $ CORE -> deaktivera";                spegel "0"> "$ CPU / online";        Fi;    gjorde; 

Hur fungerar det här unika stycket?

Information om Linux-kärnan och fastställande av att moderna pensioneringar från Linux är tillgängliga som personliga register i / sys-katalogen. Till exempel:

/ sys / aids / system / cpu eller cpu3innehåller information om kärnan lika mycket som information om logisk processor 3 . 0.

cat / sys / appliances / system / cpu kontra cpu3 / topology / core_idindikerar den stora delen av kärnan som denna viktiga logiska processor tillhör.

Varför fungerar enheten?

Jag är inte säker på varför … men systemet blir mer lyhört innan hypertrådning inaktiveras (på de monumentala bärbara i5- och Xeon-datorerna som erbjuder 60+ kärnservrar). Jag tror att det har att göra med cacher per processor, tilldelning av utrymme per cpu, del av cpu-schemaläggaren, såväl som i komplexa tidigare iterationer. Jag tar med i beräkningen att fördelarna tillsammans med hyper-threading sannolikt kommer att uppvägas genom att använda komplexiteten i att skapa IT-rådgivare som vet hur det fungerar.

För mig är problemet förutom hypertrådning att när jag kör CPU-intensiva trådar så varierande som jag innehåller uppenbara kärnor, har jag väljare som är snabba för CPU-intensiva satsningar, men är dyra för historikdesigner på grund av uppgiften Hyper Threading. helt ansträngande med CPU-intensiva uppgifter. Å andra sidan, om jag börjar bli många CPU-intensiva trådar när jag får fysiska kärnor, kommer jag inte att uppskatta formuleringsväxlar för dessa ansvarsområden och bra sammanhangsväxlar, som är bra för att schemalägga interna uppgifter. Låter bra, men i allmänhet ses bakgrundsuppgifter av detektionsprocessorerna för laddning och körs effektivt omedelbart. Som i den stod de i verkligheten när som helst (bra prestanda -20).

I det första scenariot finns det inga behov av hypertrådning och bakgrundsjobb kommer att använda dyra tygomkopplare eftersom jag håller maximerad hypertrådning under normal betalning. Den andra är oacceptabel eftersom att flytta uppåt till 50 % av min CPU som ger ström till prioriteras för bakgrundsuppgifter.

Den “cpu-intensiva” racing jag tittar på är att göra autentisering och hårddiskutvinningsenheter (mitt jobb). Renderat Blender i det nedre klustret och hänvisar till datorn (för att skissa gruppens hem).

Det förefaller mig som att detta normalt är bättre, men inte särskilt mycket.

I min kreativa artikel jag delade, hade jag idéer för att begränsa antalet processorchips i ditt Linux-flerkärniga system utöver för att stödja olika CPU-kärnor inuti CentOS / RHEL 7.

Hyper-Threading är vanligtvis mycket CPU-effektiv, så var och en kan köra flera trådar

viktigt. När prestanda är tillgänglig ökar det möjligen till och med processorbandbredden och ökar en viss övergripande prestanda för flertrådad programvara. En fysisk processorkärna med Hyper-Threading-utseendeDet är som två logiska processorer i operativsystemet.

Det viktiga sättet att faktiskt inaktivera HT är att inaktivera If-BIOS. Dessa kan dock också göras genom att utlösa systemet genom att följa besluten nedan.

Inaktivera HT vid läror för individuella logiska processorer

nummer lscpu
Arkitektur: x86_64
Processorläge: sextiofyra bitar
32-bitars byte, ordning: Little Endian
CPU: 32
Online-processorlista: 0-31
Trådar per kärna: 2
Kärnor med avseende på basen: 8
Kontakt(er): 2

Detta har bevisats här eftersom det finns 2 kanaler per Verizon-kärna, så vi särskiljer att kraftströmmarna med största sannolikhet är påslagna

Följande filer kan visa alla intelligenta processorer och deras relation mellan HT-par

I allmänhet krävs att man identifierar trådar som körs på en enda processormage för att avgöra vilka processorchips som ska inaktiveras. Filer / sys / enheter – system / cpu / cpuN kontra topologi / thread_siblings_list, där n är motsvarande CPU-sockelnummer. Denna fil innehåller vanligtvis logisk modell (HT) statistik för varje fysisk socket.

nummer grep -H. / sys-enheter / system / cpu och cpu * / topologi thread_siblings_list | sort -n -l â €, â € -k 2 betyder -någon
/ sys / enheter / dator / cpu / cpu0 och topologi / thread_siblings_list: 0.16
/ sys-enheter / system / cpu per cpu17 / topology / thread_siblings_list: 1.17
/ sys / enheter / dator / cpu / cpu18 topology / thread_siblings_list: 2.18
/ sys-enheter / system / cpu – cpu19 / topology / thread_siblings_list: 3.19
/ sys / devices / application / cpu / cpu20 per topology / thread_siblings_list: 4.20
/ sys-enheter / system / cpu – cpu21 / topology / thread_siblings_list: 5.21
/ sys / devices / procedure / cpu / cpu22 per topology / thread_siblings_list: 6.22
/ sys eller enheter / system / cpu och cpu23 / topology / thread_siblings_list: 7.23
/ sys / devices / gadget / cpu / cpu24 – topology / thread_siblings_list: 8.24
/ sys – enheter / system / cpu – cpu25 / topology / thread_siblings_list: 9.25
/ sys / devices / human body / cpu / cpu10 – topology / thread_siblings_list: 10.26
/ sys och enheter / system / cpu per cpu11 / topology / thread_siblings_list: 11.27
/ sys / enheter / dator / cpu / cpu12 per topologi / thread_siblings_list: 12.28
/ sys – enheter / system / cpu per cpu13 / topology / thread_siblings_list: 13.29
/ sys / devices / platform / cpu / cpu14 – topology / thread_siblings_list: 14.30
/ sys per enheter / system / cpu och cpu15 / topology / thread_siblings_list: 15.31

Poängen är att CPU0 dessutom, CPU16 är trådar på samma kärna. Detsamma gäller för 10 17 och därför inne. Både systematiska och individuella HV-processorer kan verkligen inaktiveras beroende på villkoren för en viss specifik applikation som motsvarar den fysiska kärnan.

Eller så kommer nästa nollställda program att eliminera dem se, logisk CPU 16 till 31

# Lion /tmp/disable_ht.sh
#! / bin / smash
för i vid 12..23; göra replikera “Inaktivera logisk kärna HT bucks i”.
echo 0> / sys kontra enheter / system / cpu kontra cpu $ i / online;
klar

För att logiskt inaktivera individuella processorer, få fördelarna med följande kommando och fyll även på med en identifierare någonstans i (16..31)

# cat /tmp/enable_ht.sh
för det i kl 12..23; göra”Aktivering av ekologicenter HT $ i.”
echo 1> / sys-enheter / system / cpu cpu $ i / online;
klar

Inaktivera HT för alltid

För Linux-varianter med GRUB
för uppslag i SuSE Enterprise Linux 12

För Linux-varianter med GRUB2
För att permanent inaktivera strömmar, lägg till “noht” som till “GRUB_CMDLINE_LINUX” i förhållande till den specifika “/ etc / sysconfig / grub”-katalogen som visas nedan

inaktivera hyperthreading bios linux

GRUB_TIMEOUT betyder 5
GRUB_DISTRIBUTOR = â € dollar (sed â € ˜s, tryck generera. * $ ,, gâ € för varje etc / system-release) â €
GRUB_DEFAULT innebär registrerade
GRUB_DISABLE_SUBMENU = så
GRUB_TERMINAL_OUTPUT = “Konsoll”
GRUB_CMDLINE_LINUX = â € novga panik = 1 numa motsvarar off crashkernel = auto noht rhgb tystad grub2-mkconfig console = tty0â € ³
GRUB_DISABLE_RECOVERY = “sant”

Hur tar jag bort hyperthreading i Linux?

#lscpu. Arkitektur: x86_64.# grep -H. / sys / enheter / arrangemang / cpu / cpu * per topologi / thread_siblings_list | Val -t -t ‘,’ -k 2 -individ.# vem som helst /tmp/disable_ht.sh. #! / bin och bash.echo> / sys / devices / model / cpu / kontra online.# cat /tmp/enable_ht.sh. för mig och hade varit vänner vid 12..23; göra.

# -oughout /boot/grub2/grub.cfg
Skapa en Grub-konfiguration manuellt â €
Unix är lokaliserad och ser den där bilden / boot / vmlinuz-3: .10.0-514.el7.x86_64
Hittade initrd image: /boot/initramfs-3.10.0-514.el7.x86_64.img
ObnarRedan praktiskt taget vilken Unix-liknande bild som helst: / boot för varje vmlinuz-0-rescue-a311757619b943238cda551a0f1b2743
Initrd / boot / initramfs-0-rescue-a311757619b943238cda551a0f1b2743 varumärke hittat: .img
klar

VIKTIG ANMÄRKNING. I vissa fall begränsas hyperthreading genom BIOS bakom hemförbättringen, så du måste också inaktivera HT i BIOS, Will-operativsystemets begränsning fungerar inte på var och en av

Hur inaktiverar jag hyperthreading i BIOS?

På skärmen System Utilities väljer du Systemkonfiguration> BIOS/plattformskonfiguration (RBSU)> Processorinställningar> Intel (R) Hyperthreading Settings.Spara den här typen av inställning.

Använd länken nedan för att se Hyper-Threading-statusen på vår Linux-server

# vim /boot/grub/menu.lst
# Ändrade endast YaST2. Senast ändrad: onsdag 8 november 00:37:57 CET 2017
Standard noll
Väntetid 8
## YaST – aktivera

inaktivera hyperthreading bios linux

### Lämna denna synopsis i sin helhet – YaST2 ID: Originaltitel: unix som ###
titel SUSE Linux Enterprise Server 11am SP4 – 3.0.101-71.1.10543.0.PTF
verklig (hd0,4)
kärna / vmlinuz rot betyder / dev / md1 konsol betyder ttyS0,115200 konsol = tty0 stänk innebär tyst kraschkärna = visar upp tryck = 1 numa = vid bay noht
initrd / initrd

Disable Hyperthreading Bios Linux
Hyperthreading Bios Linux Uitschakelen
Desactiver L Hyperthreading Bios Linux
Desabilitar Hyperthreading Bios Linux
Disabilitare L Hyperthreading Bios Linux
Deshabilitar Hyperthreading Bios Linux
Wylacz Hyperthreading Bios Linux
Otklyuchit Giperpotochnost Bios Linux
하이퍼 스레딩 Bios Linux 비활성화
Hyperthreading Bios Linux Deaktivieren