Also es geht beides sehr gut wie ich finde. Erstmal "chrt" wie zuvor genannt, aber auch das Binden der Prozesse an einen Kern mit folgendem Befehl:
Standardmäßig kann 7z beide CPUs nutzen, d.h. der Befehl zum Zurücksetzen ist dieser:
Die Frage ist nun aber wie man das intelligent umsetzen könnte. Der smb-Prozess war von Haus aus im Gegensatz zu 7z auf einen Kern gebunden. So blieb mir nur die Möglichkeit 7z den anderen Kern zuzuweisen. Doch nutzt der smb-Prozess immer diesen einen Kern und gilt das für alle Prozesse, die größere Last verursachen können. Ich denke mal nicht.
Daher müsste man es wenn so machen:
- jede Minute auf die Existenz von 7z Prozessen prüfen
- wenn 7z gefunden, dann die Last der anderen Prozesse jede Minute prüfen
- jeder andere Prozess, der mind. 10% Last verursacht wird auf seine zugewiesenen Kerne geprüft
- wenn 0,1 oder 1, dann bekommt 7z Kern 0 zugewiesen
- wenn 0, dann bekommt 7z Kern 1 zugewiesen
- sobald die anderen Prozesse wegfallen bekommt 7z sein 0,1 zurück
Mit chrt ist es dagegen viel einfacher:
- jede Minute auf die Existenz von 7z Prozessen prüfen
- wenn 7z gefunden, dann "SCHED_IDLE" zuweisen