Forum: PC Hard- und Software Prozesse parallel abarbeiten.


von MeierP (Gast)


Lesenswert?

Hallo,

Ich bin auf diesem Themengebiet wenig bewandert darum hoffe ich das Ihr 
mir helfen könnt.

Die Frage ist einfach. Können Computer heutzutage Aufgaben parallel 
verabeiten oder wird alles seriell abgearbeitet?

Mit einerm Prozessor ist klar (es gibt zwar Threats) aber diese werden 
seriell verarbeitet.

Wie arbeiten nun ein Dual Core (bzw. quad core usw.)?

Vielen Danke für die Hilfe.
Schöne Grüße
Patric

von Williwillliwallawalla (Gast)


Lesenswert?

> ... (es gibt zwar Threats) ...

Häh? Was gibt es da für Gefahren oder Bedrohungen?

von Christian R. (supachris)


Lesenswert?

MeierP schrieb:
> Wie arbeiten nun ein Dual Core (bzw. quad core usw.)?

Die arbeiten ganz innen schon parallel. Problem ist aber eigentlich 
immer die Speicher-Anbindung, denn die ist nicht wirklich parallel. 
Dafür hat aber meistens jeder Kern seinen Cache, wo die demnächst 
(hoffentlich) benötigten Daten vorgehalten werden. Somit arbeiten die 
wenn es die Software zulässt, meistens parallel und müssen halt immer 
mal auf die anderen Cores warten, wenn Ergebnisse gebraucht werden, oder 
neue Daten aus dem Hauptspeicher.

von (prx) A. K. (prx)


Lesenswert?

MeierP schrieb:
> Die Frage ist einfach. Können Computer heutzutage Aufgaben parallel
> verabeiten oder wird alles seriell abgearbeitet?

Ja.

> Mit einerm Prozessor ist klar (es gibt zwar Threats) aber diese werden
> seriell verarbeitet.

Da wirds sprachlich problematisch. Weil man sich nicht drüber einig ist, 
was genau unter einem Prozessor zu verstehen ist. Ist es (1) jene 
Einheit, die einen Befehlsfluss mehr oder weniger sequentiell 
abarbeitet? Oder ist es (2) das, was beim PC im Sockel steckt?

(1) bezeichne ich deshalb lieber als Core und (2) als Sockel. Und meide 
den Begriff des Prozessors, wenn es um Präzision geht.

Aber auch Threads (threats sind Drohungen) sind heute i.d.R. als 
parallel einzustufen. Der Dekoder und der Rest des in order frontends 
fischt zwar alternierend aus mehreren Streams, der Rest des Prozessors 
geht aber ziemlich ungeordnet und parallel mit den so erhaltenen 
Befehlen um.

Ein Intel "Quadcore Prozessor" im PC Sprachgebrauch enthält also 4 
unabhängige Cores, die (wenn Hyperthreading enabled) effektiv 8 
unabhängige Befehlsabläufe parallel ausführt.

: Bearbeitet durch User
von (prx) A. K. (prx)


Lesenswert?

Bei den AMDs der letzten Jahre wird noch etwas komplizierter, weil AMD 
auf Intel'sches SMT (Hyperthreading) innerhalb eines out of order Cores 
verzichtet und statt dessen sogenannte Module implementiert.

Ein solches Modul hat einen einzigen Code-Cache und kontrolliert 2 
Threads, wie ein Intel Core, trennt aber die Ausführung von 
Integeroperationen in zwei völlig getrennte Ausführungsgruppen mit 
getrennten Data-Caches auf, während Intel diese in der gleichen Gruppe 
von Ausführungseinheiten im gleichen Cache abarbeitet. Für 
Fliesskommaoperationen gibt es innerhalb eines Moduls nur gemeinsame 
eine Gruppe von Ausführungseinheiten.

Weshalb das, was bei AMD auf dem Markt gerne als Achtkerner firmiert, 
tatsächlich nur 4 solcher Module enthält und, wenn man es auf die 
Intel'sche Begriffswelt abbildet, technisch eher ein Vierkerner mit 
anderer teilweise unabhängiger Implementierung von Threads ist. Aber 8 
klingt halt besser.

: Bearbeitet durch User
von (prx) A. K. (prx)


Lesenswert?

A. K. schrieb:
> Aber auch Threads (threats sind Drohungen) sind heute i.d.R. als
> parallel einzustufen.

Meine Einschränkung kommt daher, dass es auch mal Cores gab (IBM RS64), 
die genau einen Thread sequentiell so lange verfolgten, bis aufgrund 
eines cache miss eine längere Wartezeit anstand. Dann wurde regelrecht 
auf den anderen Thread umgeschaltet. Heute üblich und bei Intel 
implementiert, wenn freigeschaltet, ist indes eine quasi-parallele 
Ausführung von Threads.

von (prx) A. K. (prx)


Lesenswert?

A. K. schrieb:
> Aber auch Threads (threats sind Drohungen) sind heute i.d.R. als
> parallel einzustufen. Der Dekoder und der Rest des in order frontends
> fischt zwar alternierend aus mehreren Streams, der Rest des Prozessors
> geht aber ziemlich ungeordnet und parallel mit den so erhaltenen
> Befehlen um.

Kleine Korrektur, um bei einer einheitlichen Begriffswelt zu bleiben: 
Der Dekoder und der Rest des in order frontends fischt zwar alternierend 
aus mehreren Streams, der Rest des Cores geht aber ziemlich ungeordnet 
und parallel mit den so erhaltenen Befehlen um.

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.