Ich habe gelesen, dass das Einstellen von etwas in Echtzeit ein großes Nein-Nein ist, also werde ich das nicht tun. Ich habe jedoch eine Anwendung, mit der ich sicherstellen muss, dass mein System immer die höchste Priorität hat, da dies für den Rest der von mir ausgeführten Anwendungen von entscheidender Bedeutung ist. Besteht die Gefahr, die Priorität auf hoch zu setzen, was eine Stufe unter der Echtzeit liegt?
Wie könnte ich dies auch tun, indem ich das Verknüpfungsziel ändere? Was ist der Befehl?
Antworten:
Echtzeit ist nicht unbedingt ein "Nein-Nein". Es könnte andere Prozesse aus CPU-Zyklen heraus hungern lassen. Einige Anwendungen können damit nicht umgehen. Es ist etwas, mit dem man experimentieren müsste.
Hoch sollte weniger ein Problem sein. Sie müssen Ihr System jedoch weiterhin überwachen, um festzustellen, ob sich alle Anwendungen gut verhalten.
So ändern Sie den Prozess über die Befehlszeile, die Sie in eine Verknüpfung einfügen können:
http://support.microsoft.com/kb/191771
quelle
Ich würde sagen, es kommt darauf an. Wenn Sie nur einen Kern / eine CPU auf Ihrem Computer haben und dies eine CPU-intensive Aufgabe ist, würde ich sie nicht auf Echtzeit einstellen. Hoch mag in Ordnung sein, aber das muss experimentiert werden.
Wenn Sie mehrere Kerne haben und der Prozess nur einen Thread hat: Stellen Sie ihn so ein, wie Sie möchten. Ihre anderen Kerne sind weiterhin frei, selbst wenn ein Kern die ganze Zeit zu 100% ausgelastet ist.
Wenn Sie mehrere Kerne haben und der Prozess mehrere Threads umfasst, hängt dies davon ab, ob alle Threads zu 100% ausgelastet sind. Einige Programme haben einen 'Manager'-Thread, der die Arbeit an andere Threads weiterleitet, aber selbst nicht viel verarbeitet. Dies würde einen Kern nahezu frei lassen und somit eine hohe Priorität oder Echtzeitpriorität ermöglichen.
Andere Programme versuchen, alle Kerne aufzunehmen. In diesem Fall mag hoch in Ordnung sein, aber es muss experimentiert werden.
Selbst andere nehmen nur eine bestimmte Anzahl von Kernen und verwenden möglicherweise nicht alle verfügbaren Kerne. In diesem Fall sollte eine hohe Priorität oder Echtzeitpriorität in Ordnung sein.
Experimentieren Sie, es sei denn, Sie befinden sich auf einem einzigen Kern. Meistens tut es nicht weh, es auf Hoch oder sogar in Echtzeit einzustellen. Sie können die Affinität eines Prozesses (wie viele Kerne er verwenden kann) auch im Task-Manager festlegen. Auf diese Weise können Sie die Belastung Ihrer CPU besser ausgleichen. Es kann auch dazu beitragen, die Temperaturen und den Stromverbrauch niedrig zu halten.
quelle
Ob dies für Sie funktioniert, hängt ganz davon ab, was Ihre Anwendung tut. Wenn es sich um eine lange, lange Berechnung handelt, bei der nie auf E / A gewartet werden muss, können Sie davon ausgehen, dass das Ausführen mit hoher Priorität Ihre Maschine in die Knie zwingen kann. Wenn das Problem jedoch die Latenz ist und Ihre Anwendung als Reaktion auf einen E / A-Abschluss oder ein ähnliches Ereignis nur sehr schnell aufwachen muss, führen Sie eine schnelle Verarbeitung durch und schlafen Sie dann wieder ein. Dies ist in Ordnung.
quelle