SMP - MultiProzessor

Blender3D

Blender3D

Vitamin C++
Hallo, liebes Forum

Muss ein Prozessor SMP unterstützen, damit ich den Linux-SMP-Kernel darauf laufen lassen kann?

Grüße, Blender3D
 
Man kann einen SMP Kernel auch auf einer Einprozessorcpu laufen lassen.
 
Aber würden alleKernerichtig usgenutzt werden, wenn man einen SMP-Kernel auf einem (bzw. 2) Prozessoren, die keinen SMP-Befehlssatz haben laufen lässt?

Grüße, Blender3D
 
Er meint wahrscheinlich die Maschinenbefehle die die CPU hat.
 
SMP-Systeme bzw. dessen CPUs teilen sich lediglich den gleichen Adressraum, man darf auch bei Wikipedia schauen.

Und ja es geht, hatte auch mal ein SMP-Faehigen Kernel laufen unter einer CPU bzw. ein/er Einheit/Kern.

In der Kernelconfig (kconfig) sehe ich grad, dass das aktivieren von SMP auf Systemen mit einer CPU den Kernel langsamer macht.

On a singleprocessor machine, the kernel will run faster if you say N here.
 
Zuletzt bearbeitet:
Also kann ich davon ausgehen, dass ich zwei Intel Xeon 54xx Proessoren, obwohl auf der Liste der Befehlssätze nicht ausdrücklich SMP daruf steht, unter einem SMP-Kernel korrekt (also mit Ansprachemöglichkeit für 8 Kerne) zum Laufen bekomme?

Grüße, Blender3D
 
Ich würde die Behauptung aufstellen, daß jeder Mehrkernprozessor und jedes Board mit mehreren Prozessoren extra dafür konstruiert wurde, unter einem SMP-Kernel einsetzbar zu sein. Sofern das Board keine Fehlkonstruktion ist und die Firmware mit dem Prozessormodell klarkommt, wird das Ding auch laufen.

Bei Grafikkarten gab es meines Wissens schon Fakes, wo mehr Speicher aufgelötet wurde, als der Grafik-Chip verwalten kann, aber daß jemand auf einem Mainboard lauter CPUs in funktionslosen Sockeln untergebracht hat, habe ich noch nie gehört.
 
Zuletzt bearbeitet:
Ich kann sogar einen SMP-Kernel auf CPUs laufen lassen, die NICHT für SMP geeignet sind.

Mein altes Abit BP6 mit Dual Celeron kann das, obwohl der Celeron laut Intel nicht dualfähig ist.
 
my system schrieb:
[13:58:57](tomekk|~) » uname -a
Linux contempt 2.6.24-ARCH #1 SMP PREEMPT Sun Mar 30 11:40:06 CEST 2008 i686 Intel(R) Celeron(R) M CPU 440 @ 1.86GHz GenuineIntel GNU/Linux
[13:58:59](tomekk|~) »
Das sagt alles ;)

Und ich hab bissle gegoogelt. Ich finde nichts vom angeblichen "smp befehlsatz". Ist glaub ich so ein Linux ding.
 
@ Blender3D

Wenn die nicht auf einem asymmetrischen Multiprozessorsystem verbaut sind (:brav:) und Du eine CPU mit hardwareseitigen Multithreading (bei Intel Hyper-Threading) hast muss/sollte der Kernel SMP unterstuetzen (auch wenn bei HTT nur ein Kern vorhanden ist), um Prozesse abzuschicken.

SMP wird hauptsaechlich dazu eingesetzt, um EIN Programm auszufuehren, welches sich (durch angepasster Programmierung) auf zwei CPUs verteilt (Threads), somit gleichen Adressraum verwendet. Das ist bei ASMP-Systemen nicht moeglich, da CPUs von einander unabhaengig laufen, bzw. dessen Aufgaben/Software jeweils eine CPU verwenden.
 
Zuletzt bearbeitet:
Mal eine Frage: Kann ich mit dem Befehl taskset einem Proramm mehrere Prozessorkerne zuweisen, wenn es nicht oder nur teilweise für Multiprozessoren gebaut ist? Oder würde das nur Müll ergeben.

Grüße, Blender3D
 
Erstens ist es nicht moeglich Programmteile auf mehrere Kerne zu verteilen (und wenn ergaebe das erheblichen Muell) (das machen die schon selber) und Zweitens ergibt schon allein schlecht Programmiertes Multithreading Muell (siehe z.B. OpenMP-Beispiel bei Wikipedia).
 

Ähnliche Themen

Linux Kernel 6.3: Spectre erhält effizientere Patches und Zen 4 mehr Leistung

systemd service mit Bash Script und Subshell in einer tmux Umgebung

günstiger Mehr-Kerner (CPU) für VMs

batch script funktioniert nicht ...brauche hilfe

Samba 4.6 Ads Member Server einseitige Vertrauensstellung

Zurück
Oben