Wenn es dich gestört hat, dass jemand anderes die Informationen eines Kernel proc File falsch interpretieren könnte, hättest du es ja auch kurz erklären können.
Mich stört eher die Art und Weise der Diskusionen hier im Forum, speziell bei Themen im CPU und GPU Bereich
Auch glaube ich, dass du mich weiterhin falsch verstehst. Die Aussage von Phantomias oben, das jedes Tool acht Cores ausgibt, hast du versucht zu wiederlegen mit einer Linux Ausgabe, die allerdings eigentlich keine Informationen über die Kerne gibt. Zumindest nicht davon, wovon Phantomias gesprochen hat.
Warum? Schau mal bitte in die Doku auf kernel.org... ->
AMDs nomenclature for CMT threads is "Compute Unit Core". The kernel always uses "thread".
Deswegen auch das Thema, man muss halt prüfen, was die Zeilen überhaupt aussagen wollen. Das, was dort bei "Siblings" steht, sind die logischen Prozessoren, Neudenglisch eben Threads geschimpft. Eben genau diese von AMD höchst selbst betitelten "
Compute Unit Cores". In deinem Fall sind das zweifelsfrei vier, in Phantomias Beispiel eben acht.
Der Rest, wie gesagt, man sollte nicht blindlings auf etwas vertrauen, was irgendwo steht. Würde man die Angaben dort 1:1 nehmen, könnte das Missverstanden werden. Und mir scheint, du hast es missverstanden.
Ein logischer Prozessor wird ausgegeben. Mir ist kein Prozessor bekannt der mehr Siblings verarbeiten könnte als er ausgibt. Wobei mal interessant wäre was proc/cpuinfo bei nem i7 (4 Kerne 8 logische Prozessoren) ausgibt wenn man HT deaktiviert. Vermutlich 4 cores 4 siblings. Aber ja war schlecht formuliert.
Edit2: Ja proc/cpuinfo ist eine virtuelle Datei, die gibt keine Daten aus, sondern die stehen da drin also virtuell nicht so wirklich.
Ach schon wieder doof formuliert: sibling = Anzahl der parallel arbeitenden Einheiten. Theoretisch wäre sicher ein Prozessor denkbar der siblings:4 hat aber nur 2 logische Prozessoren. Nur ob es sowas gibt, weiß ich nicht. Weswegen ich oben auch Ausgabe von siblings schrieb, weil für mich das ziemlich gleich ist. Ich hab noch nie einen Prozessor gesehen, der mehr siblings hat als logische Prozessoren.
Wie gesagt:
Siblings = Threads = logische Prozessoren. Bei AMDs Bulldozer based Modellen sind das die (Int) Cores, bei anderen AMD Modellen das gleiche wie bei Intel ohne SMT, bei Intel sind das die (SMT) Threads, sofern SMT vorhanden ist, wenn nicht, dann sind sogar Siblings = Threads = logische Prozessoren = Cores.
Cores -> bei Intel sind das die Cores/Kerne, phyisch auf dem DIE vorhanden, bei AMDs Bulldozer sind das die Module, ebenso physisch vorhanden.
Es kann somit keinen Prozessor geben, der mehr "Siblings" als verarbeiten kann als er ausgibt. Wobei das auch nicht ganz richtig ist, Prozessoren können durch Techniken wie SMT/CMT und auch bspw. durch OoO und Pipelining mehr zur gleichen Zeit verarbeiten. Beispiel: du erzeugst in zwei Threads Last auf den ALUs und auf der FPU und lässt diese beiden Software-Threads zur selben Zeit auf dem selben phyischen Hardwarethread (bei Intel also ein Thread eines Cores, bei AMD ein Core eines Models) laufen -> und das geht weitestgehend gleichzeitig, da ALU(s) und FPU unabhängig arbeiten können.
"
sibling = Anzahl der parallel arbeitenden Einheiten. Theoretisch wäre sicher ein Prozessor denkbar der siblings:4 hat aber nur 2 logische Prozessoren."
Wie gesagt, Siblings = Threads = logische Prozessoren. Ob die parallel arbeiten können oder nicht, ist nicht daraus ersichtlich. Bei SMT muss das nicht zwangsweise gelten. Perfekter Maschinencode, welcher in einem Softwarethread alle verfügbaren ALUs eines Cores auslasten kann würde durch SMT logischerweise nicht parallel laufen. Das gleiche gilt für AMDs FPU. Ein Thread auf einem Modul, welcher die FPU vollends ausfährt gibt beim zweiten Thread natürlich keine Ressourcen mehr.
Zum zweiten, nach der Doku KANN es das nicht geben, wie oben erwähnt. Man hat es sich halt einfach nur einfach gemacht und verwendet nicht die richtigen Namen bei der Ausgabe, wo CMT in Nutzung ist.
Das ist das, was ich oben sagte, man müsste die "Cores" bei CMT eben Module schimpfen. Und die Threads saubererweise Cores, denn so nennt sie AMD nunmal.
Übrigens, nur der Vollständigkeit halber, /proc/cpuinfo auf einer Xeon Phi 7250 gibt 272 Siblings und 68 Cores aus. -> 4-way SMT und reiht sich damit 1:1 ein. Die "processor" Angabe geht von 0 bis 271.
Zen wird dort beim acht Kerner wohl ganz sicher 16 Siblings stehen haben, wie auch die "processor" Angabe von 0-15 diese Threads darstellt. Cores werden es dann acht sein...