Archiv verlassen und diese Seite im Standarddesign anzeigen : AMD x2 - CS läuft viel zu schnell
Hallo,
ich habe gerade wieder Suse 9.3 (32-Bit) installiert. Jetzt habe ich aber das Problem, das CS 1.6 viel zu schnell läuft. Das selbe Problem hatte ich auch unter WindowsXP, was sich aber durch den Treiber von AMD beheben lies.
Jetzt meine Frage: Wie kann ich einen Prozess auf nur EINEM Kern laufen lassen?
mfg
cRaZyByTe
rettichschnidi
15.06.06, 19:12
Hallo,
Jetzt habe ich aber das Problem, das CS 1.6 viel zu schnell läuft.
http://www.linuxforen.de/forums/showthread.php?t=215511&highlight=amd+schnell
Erstmal vielen Dank für die schnelle Antwort. Leider bezeiht sich das Problem in dem genannten Thread auf Cool&Quiet und hilft mir daher nicht viel. Mein Problem sind die 2 Kerne. Daher muss ich wissen, wie ich einen Prozess einem Kern zuweisen kann.
Kleine technische Hilfe:
Ein Prozess kann nur auf einem Kern laufen ;-) (Ansonsten wäre Dual Core schon viel länger ein Thema).
lg, Helmut
Wenn das so ist, sollte mein Problem also gar nicht existieren?
Ich hab den Ärger erst mit meinem x2 4400+ bekommen...
Und was hattest du vorher?
Kleine technische Hilfe:
Ein Prozess kann nur auf einem Kern laufen ;-) (Ansonsten wäre Dual Core schon viel länger ein Thema).
lg, Helmut
Deswegen gab es bis dato wohl auch nur Single-CPU-Systeme.
Kleine technische Hilfe: Multithreading (http://de.wikipedia.org/wiki/Multithreading).
Und was hattest du vorher?
Kann ich Dir sagen: Keinen Dualcore.
Zum Thema: Das Problem liegt daran, dass die beiden Cores jeweils einen eigenen, nicht untereinander synchronisierten Timestamp Counter haben. Dadurch entsteht ein gewisser Drift, der sich in beobachteten Symptomen aeussert.
Ob es unter Linux einen Patch dafuer gibt, weiss ich nicht. Bin zu faul zu googlen ;)
'cuda
Kann ein Prozess nicht seine Threads auf die Kerne aufteilen?
Mir ist spontan eingefallen, die Prozesse an eine CPU zu binden, da das Problem doch wahrscheinlich dabei auftritt, wenn Linux die Prozesse hin und herschiebt, oder?
http://www.cyberciti.biz/tips/setting-processor-affinity-certain-task-or-process.html
Gruß Robert
@HEMIcuda
Würde mich sehr wundern, der Linux Scheduler neigt dazu (bzw. tut es einfach ;-) ), Prozessen immer die selbe CPU zuzuweisen. Nur wenn es echte Gründe gibt, einen Prozess auf eine andere CPU zu verlagern ('original' CPU Kern überlastet) wird dies auch getan. Dies sollte beim Spielen absolut nicht der Fall sein.
@cRaZyByTe: hast du es überhaupt mit diesem Cool'N'Quiet 'Trick' probiert oder einfach nur gesagt "Ach, das kann es nicht sein"?
Würde mich sehr wundern, der Linux Scheduler neigt dazu (bzw. tut es einfach ;-) ), Prozessen immer die selbe CPU zuzuweisen. Nur wenn es echte Gründe gibt, einen Prozess auf eine andere CPU zu verlagern ('original' CPU Kern überlastet) wird dies auch getan. Dies sollte beim Spielen absolut nicht der Fall sein.
Das stimmt IMO nicht, Linux schiebt die Prozesse immer hin und her um die Last gleichmäßig auf die CPUs zu verteilen.
Gruß Robert
@HEMIcuda
Würde mich sehr wundern, der Linux Scheduler neigt dazu (bzw. tut es einfach ;-) ), Prozessen immer die selbe CPU zuzuweisen. Nur wenn es echte Gründe gibt, einen Prozess auf eine andere CPU zu verlagern ('original' CPU Kern überlastet) wird dies auch getan. Dies sollte beim Spielen absolut nicht der Fall sein.
Wuerde mich sehr wundern, wenn Du meinen Link gelesen haettest. Vielleicht solltest Du Dich auch mal mit dem Scheduler beschaeftigen. Dass nur eine Recheneinheit benutzt wird, ist nur der Fall, wenn Du eine singlethreaded Application hast.
Si tacuisses...
'cuda
Cool 'n Quiet schalte ich mit Linux immer aus - hatte schon zu viel Ärger damit ;)
Ich habe jetzt auch eine vorübergehende Lösung: cat /dev/zero > /dev/null
Klingt blöd, hilft aber. Das ist natürlich keine Dauerlösung.
UPDATE:
Endgültige Lösung ist Taskset ;)
Cool 'n Quiet schalte ich mit Linux immer aus - hatte schon zu viel Ärger damit ;)
Ich habe jetzt auch eine vorübergehende Lösung: cat /dev/zero > /dev/null
Klingt blöd, hilft aber. Das ist natürlich keine Dauerlösung.
Naja, ist irgendwo klar. Damit machst Du einen Kern dauerhaft platt, der dann dem Spiel nicht mehr zur Verfuegung steht. Den gleichen Effekt erhaelst Du auch, wenn Du mit einem Nicht-SMP-Kernel bootest.
'cuda
Naja ... nur Spezis hier ^^
Procbind lets you bind a process to a specified processor. After that, the process will only run on that/those processor(s)
Mehr hier -> http://www.unixboard.de/vb3/showthread.php?t=20509&highlight=procbind
man taskset (http://www.die.net/doc/linux/man/man1/taskset.1.html) ;)
Manchmal fühle ich mich verarscht wenn ich mehrere Posts zuvor die Lösung poste.
-robert
Manchmal fühle ich mich verarscht wenn ich mehrere Posts zuvor die Lösung poste.
-robert
Willkommen in meiner Welt...
'cuda
Manchmal fühle ich mich verarscht wenn ich mehrere Posts zuvor die Lösung poste.
-robert
sorry hatte nur den titel und den ersten post gelesen und dann geantwortet.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.