Yoga Hyperthreading bei X1 Yoga ausschalten

Neko

New member
Registriert
1 Aug. 2008
Beiträge
63
Hallo zusammen,

ich benutze mein X1 Yoga (mit i7-6500U) zum Musik machen und habe immer wieder Probleme mit der Latenz, was zu Tonaussetzern führt. Zum messen habe ich Latencymon verwendet und es wurde mir das Hyperthreading als eines Probleme gemeldet. Die anderen Probleme habe ich soweit gelöst, aber beim Hyperthreading komme ich nicht weiter, da ich es nirgendwo ausschalten kann. Normalerweise sollte es im Bios ausschaltbar sein, aber da gib es keine Option zum Hyperthreading.
Ich habe weiterhin versucht, unter Windows 10 über msconfig 2 Prozessoren auszuschalten, aber wenn ich das mache, dann habe ich nur einen Kern und einen logischen Prozessor, anstatt keine zwei Kerne. Hier komme ich also auch nicht weiter.

Hat jemand eine mögliche Lösung für das Problem?

Vielen Dank.
 
Die Frage ist leider noch nicht gelöst. Hat jetzt vielleicht jemand eine Antwort?
 
Kannst du nicht einfach drei Kerne ausschalten? Für Musik müsste das ja noch reichen.
 
Hyperthreading selber kann man nicht im System zur Laufzeit ausschalten, da es in Hardware gelöst ist.
Man kann dem Betriebssystem aber sagen, es soll die Hyperthreads nicht nutzen. Unter Linux zB kann man die direkt deaktivieren.
Unter Windows kann man das Programm mit dem Affinity-Parameter starten: start /AFFINITY <mask>"C:\program.exe"
Anstelle von <mask> setzt man die hexadezimale Maske mit den logischen Kernen, die von dem Programm genutzt werden sollen. Wenn zB die Hyperthreads auf deinem System die logischen IDs 2 und 3 haben, die "richtigen" Kerne, die du nutzen willst 0 und 1, dann addiert man 2^0 + 2^1 = 3 und konvertiert das nach hexadezimal, in diesem Fall auch 3, und setzt das für mask ein.
Andere Anwendungen können die Hyperthreads noch nutzen, bei denen also das gleiche.
 
Kannst du nicht einfach drei Kerne ausschalten? Für Musik müsste das ja noch reichen.
Hm, das wäre eine radikale Methode. könnte aber gehen.
Hyperthreading selber kann man nicht im System zur Laufzeit ausschalten, da es in Hardware gelöst ist.
Man kann dem Betriebssystem aber sagen, es soll die Hyperthreads nicht nutzen. Unter Linux zB kann man die direkt deaktivieren.
Unter Windows kann man das Programm mit dem Affinity-Parameter starten: start /AFFINITY <mask>"C:\program.exe"
Anstelle von <mask> setzt man die hexadezimale Maske mit den logischen Kernen, die von dem Programm genutzt werden sollen. Wenn zB die Hyperthreads auf deinem System die logischen IDs 2 und 3 haben, die "richtigen" Kerne, die du nutzen willst 0 und 1, dann addiert man 2^0 + 2^1 = 3 und konvertiert das nach hexadezimal, in diesem Fall auch 3, und setzt das für mask ein.
Andere Anwendungen können die Hyperthreads noch nutzen, bei denen also das gleiche.

Das wäre eine elegante Möglichkeit, ich fürchte aber, dass das nicht reichen wird. Die meisten Latenzprobleme werden von anderen Programmen, meistens Treibern verursacht. Das müsste ich quasi bei allen laufenden Programmen machen. Kann man das global setzen? Eigentlich wäre das ja genau in der msconfig möglich, wenn ich da die Kerne direkt auswählen könnte.
Wie schon geschrieben, im Bios gibt es dazu keine Option.
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben