Prozessauslastung CPU anhand Anzahl Cores
-
- Beiträge: 497
- Registriert: 08.08.2015 15:03:09
- Wohnort: Schweiz Zürich
Prozessauslastung CPU anhand Anzahl Cores
Hello
Vielleicht könnt ihr mir weiterhelfen?
Ich zweifle gerade hin und her, ob ich mir eine I7-14700K oder eine I9-14900K kaufen soll. Der Preisunterschied ist jetzt nicht die Welt,
jedoch besitzt der 14900K mehr Kerne. Daher meine Frage :
Wie verhält es sich unter Linux mit der Auslastung der Kerne mit den Prozessen? Werden die Prozesse immer auf allen Kerne verteilt
oder besitzt Linux eine Art intelligentes Prozess Managment, damit nicht alle Kerne verwendet werden und somit der Stromverbrauch
effizient genutzt wird? Falls nämlich beim standardmässigen Betrieb alle Kerne verwendet würden, so würde der 14700K aufgrund des
Stromverbrauchs mehr Sinn ergeben.
Falls jedoch Linux die Kerne auf intelligente Weise verwendet und der Stromverbrauch bei beiden CPUs gleich wären, dann würde nur
der Preisunterschied eine Rolle spielen, was für den 14900K sprechen würde.
Eure Meinung zu dem Thema interessiert mich sehr.
Vielleicht könnt ihr mir weiterhelfen?
Ich zweifle gerade hin und her, ob ich mir eine I7-14700K oder eine I9-14900K kaufen soll. Der Preisunterschied ist jetzt nicht die Welt,
jedoch besitzt der 14900K mehr Kerne. Daher meine Frage :
Wie verhält es sich unter Linux mit der Auslastung der Kerne mit den Prozessen? Werden die Prozesse immer auf allen Kerne verteilt
oder besitzt Linux eine Art intelligentes Prozess Managment, damit nicht alle Kerne verwendet werden und somit der Stromverbrauch
effizient genutzt wird? Falls nämlich beim standardmässigen Betrieb alle Kerne verwendet würden, so würde der 14700K aufgrund des
Stromverbrauchs mehr Sinn ergeben.
Falls jedoch Linux die Kerne auf intelligente Weise verwendet und der Stromverbrauch bei beiden CPUs gleich wären, dann würde nur
der Preisunterschied eine Rolle spielen, was für den 14900K sprechen würde.
Eure Meinung zu dem Thema interessiert mich sehr.
- heisenberg
- Beiträge: 3692
- Registriert: 04.06.2015 01:17:27
- Lizenz eigener Beiträge: MIT Lizenz
Re: Prozessauslastung CPU anhand Anzahl Cores
Ich denke, dass hängt mal von den Anwendungen, die Du nutzt, ab. Ich würde vermuten, dass Du auf dem Desktop nicht so ohne weiteres Deine CPU auf allen Kernen ausgelastet bekommst. Da wäre die Frage, was Du mit Deiner Kiste machst, dass Du denkst, Du brauchst maximale CPU Power.
Im Serverbereich haben AMD-CPUs gegenüber den Intels ein weitaus besseres Preis-/Leistungsverhältnis. Ich könnte mir vorstellen, dass es im Desktopbereich vielleicht ähnlich ist.
Von der gefühlten Geschwindigkeit ist bestimmt eine NVMe-SSD der größte Booster, den man haben kann.
Ich habe mal auf der Arbeit einen Desktop I9 getestet, weil der I9 eben der schnellste Prozessor ist und dann habe ich mal gemessen, ob das Wordpress schneller war. Ergebnis: Nicht ein bisschen.
Im Serverbereich haben AMD-CPUs gegenüber den Intels ein weitaus besseres Preis-/Leistungsverhältnis. Ich könnte mir vorstellen, dass es im Desktopbereich vielleicht ähnlich ist.
Von der gefühlten Geschwindigkeit ist bestimmt eine NVMe-SSD der größte Booster, den man haben kann.
Ich habe mal auf der Arbeit einen Desktop I9 getestet, weil der I9 eben der schnellste Prozessor ist und dann habe ich mal gemessen, ob das Wordpress schneller war. Ergebnis: Nicht ein bisschen.
-
- Beiträge: 497
- Registriert: 08.08.2015 15:03:09
- Wohnort: Schweiz Zürich
Re: Prozessauslastung CPU anhand Anzahl Cores
Bezüglich SSDs habe ich mir 2 M2 Festplatten gekauft.heisenberg hat geschrieben:18.10.2023 22:59:32Ich denke, dass hängt mal von den Anwendungen, die Du nutzt, ab. Ich würde vermuten, dass Du auf dem Desktop nicht so ohne weiteres Deine CPU auf allen Kernen ausgelastet bekommst. Da wäre die Frage, was Du mit Deiner Kiste machst, dass Du denkst, Du brauchst maximale CPU Power.
Im Serverbereich haben AMD-CPUs gegenüber den Intels ein weitaus besseres Preis-/Leistungsverhältnis. Ich könnte mir vorstellen, dass es im Desktopbereich vielleicht ähnlich ist.
Von der gefühlten Geschwindigkeit ist bestimmt eine NVMe-SSD der größte Booster, den man haben kann.
Ich habe mal auf der Arbeit einen Desktop I9 getestet, weil der I9 eben der schnellste Prozessor ist und dann habe ich mal gemessen, ob das Wordpress schneller war. Ergebnis: Nicht ein bisschen.
Ich versuche gerade herauszufinden, was für mich die beste CPU ist und versuche das ganze abzuwägen mit dem Stromverbrauch in Spielen und Anwendungen und das gestaltet sich schwieriger, als gedacht.
Wenn ich das richtig verstehe, so nutzt Linux nicht willkürlich die Kerne und lastet alle aus und erhöht somit unsinnig den Stromverbrauch? Wie werden denn die Kerne von einem Linux System
verwaltet? Bedeutet mehr Kerne auch gleich höheren Stromverbrauch unter Linux?
Re: Prozessauslastung CPU anhand Anzahl Cores
Die verbreitetste Scheduler-Strategie ist "race to idle". D.h., Prozesse werden unter Ausnutzung von Taktanhebung und Parallelisierung so schnell wie möglich abgearbeitet, um danach die CPU, bzw. möglichst viele ihrer Kerne wieder schlafen legen zu können.
Das fühlt sich nicht nur für den Nutzer besser an, sondern spart unter'm Strich sogar Strom, selbst wenn mehr Kerne (dafür aber kürzer) aktiv sind.
Diese Einsparungen sind aber bei zwei im Grund vergleichbaren CPUs in einem Bereich, der kaum messbar sein dürfte, insbesondere wenn ohnehin nur geringe Last anliegt.
Fazit:
Mach davon nicht deine Kaufentscheidung abhängig!
Ob du die größere CPU nimmst, solltest du abgesehen vom Preisunterschied daran festmachen, ob du Szenarien hast, die von dem Mehr an Rechenleistung für dich spürbar profitieren.
Das fühlt sich nicht nur für den Nutzer besser an, sondern spart unter'm Strich sogar Strom, selbst wenn mehr Kerne (dafür aber kürzer) aktiv sind.
Diese Einsparungen sind aber bei zwei im Grund vergleichbaren CPUs in einem Bereich, der kaum messbar sein dürfte, insbesondere wenn ohnehin nur geringe Last anliegt.
Fazit:
Mach davon nicht deine Kaufentscheidung abhängig!
Ob du die größere CPU nimmst, solltest du abgesehen vom Preisunterschied daran festmachen, ob du Szenarien hast, die von dem Mehr an Rechenleistung für dich spürbar profitieren.
- heisenberg
- Beiträge: 3692
- Registriert: 04.06.2015 01:17:27
- Lizenz eigener Beiträge: MIT Lizenz
Re: Prozessauslastung CPU anhand Anzahl Cores
M.2 ist nur der Formfaktor. Das Protokoll, dass darüber gefahren wird macht den Unterschied: NVMe M.2 ist vermutlich ca. doppelt so schnell wie SATA M.2. Was haben denn die SSDs für eine Modellbezeichnung?Trollkirsche hat geschrieben:18.10.2023 23:45:29Bezüglich SSDs habe ich mir 2 M2 Festplatten gekauft.
-
- Beiträge: 497
- Registriert: 08.08.2015 15:03:09
- Wohnort: Schweiz Zürich
Re: Prozessauslastung CPU anhand Anzahl Cores
In dem Falle kann man nicht sagen : Mehr Cores bedeuten einen höheren Stromverbrauch als weniger Cores.hikaru hat geschrieben:19.10.2023 00:06:22Die verbreitetste Scheduler-Strategie ist "race to idle". D.h., Prozesse werden unter Ausnutzung von Taktanhebung und Parallelisierung so schnell wie möglich abgearbeitet, um danach die CPU, bzw. möglichst viele ihrer Kerne wieder schlafen legen zu können.
Das fühlt sich nicht nur für den Nutzer besser an, sondern spart unter'm Strich sogar Strom, selbst wenn mehr Kerne (dafür aber kürzer) aktiv sind.
Diese Einsparungen sind aber bei zwei im Grund vergleichbaren CPUs in einem Bereich, der kaum messbar sein dürfte, insbesondere wenn ohnehin nur geringe Last anliegt.
Fazit:
Mach davon nicht deine Kaufentscheidung abhängig!
Ob du die größere CPU nimmst, solltest du abgesehen vom Preisunterschied daran festmachen, ob du Szenarien hast, die von dem Mehr an Rechenleistung für dich spürbar profitieren.
Jetzt bleibt nur noch die Frage, welche CPU ich mir kaufen soll. Die 14900K hat eine miese Energieeffizienz, die 7950x3d ist ziemlich teuer, die 7800x3d ist schwach wenn es um Applikationen geht.
-
- Beiträge: 497
- Registriert: 08.08.2015 15:03:09
- Wohnort: Schweiz Zürich
Re: Prozessauslastung CPU anhand Anzahl Cores
Es sind Lexar790 NM.heisenberg hat geschrieben:19.10.2023 00:33:29M.2 ist nur der Formfaktor. Das Protokoll, dass darüber gefahren wird macht den Unterschied: NVMe M.2 ist vermutlich ca. doppelt so schnell wie SATA M.2. Was haben denn die SSDs für eine Modellbezeichnung?Trollkirsche hat geschrieben:18.10.2023 23:45:29Bezüglich SSDs habe ich mir 2 M2 Festplatten gekauft.
- heisenberg
- Beiträge: 3692
- Registriert: 04.06.2015 01:17:27
- Lizenz eigener Beiträge: MIT Lizenz
Re: Prozessauslastung CPU anhand Anzahl Cores
Ok. Ist 'ne NVME. Super!
-
- Beiträge: 497
- Registriert: 08.08.2015 15:03:09
- Wohnort: Schweiz Zürich
-
- Beiträge: 497
- Registriert: 08.08.2015 15:03:09
- Wohnort: Schweiz Zürich
Re: Prozessauslastung CPU anhand Anzahl Cores
Frage : Wie verhält es sich denn mit Prozessen, die permanent im Hintergrund laufen? Es gibt ja immer wieder Prozesse wie Launcher, Messenger etc. die im Hintergrund offen bleiben. Wird dorthikaru hat geschrieben:19.10.2023 00:06:22Die verbreitetste Scheduler-Strategie ist "race to idle". D.h., Prozesse werden unter Ausnutzung von Taktanhebung und Parallelisierung so schnell wie möglich abgearbeitet, um danach die CPU, bzw. möglichst viele ihrer Kerne wieder schlafen legen zu können.
Das fühlt sich nicht nur für den Nutzer besser an, sondern spart unter'm Strich sogar Strom, selbst wenn mehr Kerne (dafür aber kürzer) aktiv sind.
Diese Einsparungen sind aber bei zwei im Grund vergleichbaren CPUs in einem Bereich, der kaum messbar sein dürfte, insbesondere wenn ohnehin nur geringe Last anliegt.
Fazit:
Mach davon nicht deine Kaufentscheidung abhängig!
Ob du die größere CPU nimmst, solltest du abgesehen vom Preisunterschied daran festmachen, ob du Szenarien hast, die von dem Mehr an Rechenleistung für dich spürbar profitieren.
darauf geachtet, dass nicht für jeden einzelnen Prozess ein Kern belastet, sondern diese effizient verwaltet werden?
Re: Prozessauslastung CPU anhand Anzahl Cores
Die Prozesse auf mehrere Kerne aufzuteilen IST effizient, denn dann sind Beide zusammen kürzer online (wir reden hier von Zeiträumen im ms-Bereich), als wenn Einer beide Aufgaben erledigen würde, und dabei noch den Overhead des Kontextwechsels managen müsste.Trollkirsche hat geschrieben:19.10.2023 10:03:09Frage : Wie verhält es sich denn mit Prozessen, die permanent im Hintergrund laufen? Es gibt ja immer wieder Prozesse wie Launcher, Messenger etc. die im Hintergrund offen bleiben. Wird dort
darauf geachtet, dass nicht für jeden einzelnen Prozess ein Kern belastet, sondern diese effizient verwaltet werden?
-
- Beiträge: 497
- Registriert: 08.08.2015 15:03:09
- Wohnort: Schweiz Zürich
Re: Prozessauslastung CPU anhand Anzahl Cores
Ich hab da irgendwie ein Verständnisproblem. Ein Praxisbeispiel : Du hast einen Messenger Client, der ist die ganze Zeit offen und stellt ja einen Prozess dar. Der wird ja nicht abgearbeitet und dann geschlossen.hikaru hat geschrieben:19.10.2023 10:34:10Die Prozesse auf mehrere Kerne aufzuteilen IST effizient, denn dann sind Beide zusammen kürzer online (wir reden hier von Zeiträumen im ms-Bereich), als wenn Einer beide Aufgaben erledigen würde, und dabei noch den Overhead des Kontextwechsels managen müsste.Trollkirsche hat geschrieben:19.10.2023 10:03:09Frage : Wie verhält es sich denn mit Prozessen, die permanent im Hintergrund laufen? Es gibt ja immer wieder Prozesse wie Launcher, Messenger etc. die im Hintergrund offen bleiben. Wird dort
darauf geachtet, dass nicht für jeden einzelnen Prozess ein Kern belastet, sondern diese effizient verwaltet werden?
Somit reserviert der ja einen Kern. Jetzt hast du eine andere App wie zb. den Steam Launcher. Der wiederum bleibt ebenfalls offen und somit besetzt der einen weiteren Kern. Auch dieser wird über die Laufzeit
über nicht geschlossen. So würden sich ja nach und nach trotzdem alle Kerne in Gebrauch befinden.
Ich stelle natürlich nicht das aktuelle Konzept in Frage, da wurde sicherlich mehr überlegt als ich zurzeit wahrnehmen kann. Ich versuche es nur zu verstehen
- heisenberg
- Beiträge: 3692
- Registriert: 04.06.2015 01:17:27
- Lizenz eigener Beiträge: MIT Lizenz
Re: Prozessauslastung CPU anhand Anzahl Cores
Der Punkt ist hier - wie hikaru schon dargestellt hat - dass eine Anwendung nicht den Prozessor komplett blockiert, sondern immer nur so viel CPU-Zeit zugeteilt bekommt, wie benötigt und dass sind minimale Zeitfenster im Mikrosekundenbereich. D. h. der Prozessor ist nicht voll belegt, wenn Du da den Messenger offen hast, sondern vielleicht nur zu 0,00001 Prozent (Wert frei aus der Luft gegriffen). Was den Stromverbrauch angeht, so verbrauchen moderne Prozessoren (so gut wie) keinen Strom, wenn Sie nicht tatsächlich aktiv sind.
-
- Beiträge: 497
- Registriert: 08.08.2015 15:03:09
- Wohnort: Schweiz Zürich
Re: Prozessauslastung CPU anhand Anzahl Cores
Ok in dem Falle die grössere CPUheisenberg hat geschrieben:19.10.2023 12:08:27Der Punkt ist hier - wie hikaru schon dargestellt hat - dass eine Anwendung nicht den Prozessor komplett blockiert, sondern immer nur so viel CPU-Zeit zugeteilt bekommt, wie benötigt und dass sind minimale Zeitfenster im Mikrosekundenbereich. D. h. der Prozessor ist nicht voll belegt, wenn Du da den Messenger offen hast, sondern vielleicht nur zu 0,00001 Prozent (Wert frei aus der Luft gegriffen). Was den Stromverbrauch angeht, so verbrauchen moderne Prozessoren (so gut wie) keinen Strom, wenn Sie nicht tatsächlich aktiv sind.
Vielen Dank für die Beantwortung meiner Fragen.
Re: Prozessauslastung CPU anhand Anzahl Cores
Für - ich sag mal - Standard-Desktop Anwendungen ist es mMn irrelevant ob man 4, 8 oder 64 Cores hat. Es laufen da nie so viele Prozesse gleichzeitig, dass man das irgendwie merken würde (evt grad noch beim booten...).
Dazu kommt, dass es vermutlich kaum eine solche Anwendung gibt, die richtig gut parallelisiert werden kann.
Was man schon merkt ist der Single Core Speed. Daher würde ich für einen reinen Desktop Rechner die CPU wählen, welche am schnellsten ist.
Wenn du vor hast irgendwas paralleles zu machen (Finite Elemente, Bildverarbeitung, ...) dann musst du einen Kompromiss eingehen. Schnelle CPUs mit vielen Kernen gibt es nämlich nicht - dH das Optimum liegt da irgendwo in der Mitte. Andererseits ist der Trend einfach alles auf GPUs zu machen, die zB für Bildverarbeitung einfach viel schneller sind.
Dazu kommt, dass es vermutlich kaum eine solche Anwendung gibt, die richtig gut parallelisiert werden kann.
Was man schon merkt ist der Single Core Speed. Daher würde ich für einen reinen Desktop Rechner die CPU wählen, welche am schnellsten ist.
Wenn du vor hast irgendwas paralleles zu machen (Finite Elemente, Bildverarbeitung, ...) dann musst du einen Kompromiss eingehen. Schnelle CPUs mit vielen Kernen gibt es nämlich nicht - dH das Optimum liegt da irgendwo in der Mitte. Andererseits ist der Trend einfach alles auf GPUs zu machen, die zB für Bildverarbeitung einfach viel schneller sind.