PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : haben GPUs Cache?


gisbern
2006-01-20, 16:57:32
Haben GPUs Cache, vergleichbar mit CPUs ?

Undertaker
2006-01-20, 17:12:28
eine aktuelle graka hat zum ram mehr übertragungsrate als eine cpu zum l1-cache - und da latenzen bei einem grafikchip afaik nicht so wichtig sind, brauchen sie keine caches

Neomi
2006-01-20, 17:12:55
Haben GPUs Cache, vergleichbar mit CPUs ?

Ja, sie haben Cache, aber der ist nicht vergleichbar mit dem der CPUs. Es sind nur ein paar KB hier und da, z.B. für Texturen. Für 8x8 Texel muß es reichen (um 2x2 DXTC-Blöcke entpacken zu können), ein wenig mehr wird es wohl sein. Dann gibt es da noch den Primitive Assembly Cache, der die letzten drei transformierten Vertices halten kann und den Vertex Cache, der noch ein paar mehr verträgt. Und dann noch verschiedene weitere.

Neomi
2006-01-20, 17:24:40
eine aktuelle graka hat zum ram mehr übertragungsrate als eine cpu zum l1-cache

Ist dir klar, daß der L1-Cache mit vollem Processortakt läuft und sehr breit angebunden ist? Du vertust dich da ein wenig.

und da latenzen bei einem grafikchip afaik nicht so wichtig sind, brauchen sie keine caches

Sie braucht keinen großen, aber einige kleine.

robbitop
2006-01-20, 17:33:04
Ist dir klar, daß der L1-Cache mit vollem Processortakt läuft und sehr breit angebunden ist? Du vertust dich da ein wenig.

Sehr breit? Naja bei AMD ist die L1 Cache Anbindung 128 Bit. Bei 2,4GHz sind das gerade mal ~38,4GiB/sek.
Aktueller GDDR3 RAM mit 800MHz und 256 Bit Anbindung hingegen schafft 65 GiB/sek.
Beim P4 verschiebt sich das Verhältnis etwas, da der Takt deutlich höher ist und der L1 mit 256 Bit angebunden ist (~121GiB/sek bei 3,8GHz).

Aber ähnlich ist das Ganze schon. Die Latenzen hingegen sind bei Grafikkarten in der Tat nicht so wichtig, da diese in der Pipeline gut versteckt werden können und immer größere Bursts geschrieben werden.

Undertaker
2006-01-20, 17:35:45
Sie braucht keinen großen, aber einige kleine.

hmm, ich habe bisher immer gehört das sie gar keine haben - nennt man diese mini-speicher bei gpus überhaupt caches?

Gast
2006-01-20, 17:36:38
eine aktuelle graka hat zum ram mehr übertragungsrate als eine cpu zum l1-cache - und da latenzen bei einem grafikchip afaik nicht so wichtig sind, brauchen sie keine caches

ähm cpus haben selbst zum L2-cache weit über 100GB/s bandbreite, da sind grafikkarten weit davon entfernt.

auch GPUs haben caches, allerdings nicht 1 großen sondern viele kleine spezielle caches z.b. für texturen, vertices etc.

im grunde sind es auch eher FIFO-buffer als caches.

Coda
2006-01-20, 17:38:22
Ja tut man. Und es sind einige Caches vorhanden. Bei NV4x z.B. L1 und L2 Texture-Caches, dazu noch Pre- und Post-Vertexshader Caches und Fifos um die einzelnen Einheiten zu entkoppeln.

Aber wirklich viel ist es nicht. Primär ist das ganze dazu da dass nichts stallt. Speicherbandbreite ist viel wichtiger als Latenzen bei GPUs.

Undertaker
2006-01-20, 17:43:49
ähm cpus haben selbst zum L2-cache weit über 100GB/s bandbreite, da sind grafikkarten weit davon entfernt.

auch GPUs haben caches, allerdings nicht 1 großen sondern viele kleine spezielle caches z.b. für texturen, vertices etc.

im grunde sind es auch eher FIFO-buffer als caches.

Sehr breit? Naja bei AMD ist die L1 Cache Anbindung 128 Bit. Bei 2,4GHz sind das gerade mal ~38,4GiB/sek.
Aktueller GDDR3 RAM mit 800MHz und 256 Bit Anbindung hingegen schafft 65 GiB/sek.
Beim P4 verschiebt sich das Verhältnis etwas, da der Takt deutlich höher ist und der L1 mit 256 Bit angebunden ist (~121GiB/sek bei 3,8GHz).

Aber ähnlich ist das Ganze schon. Die Latenzen hingegen sind bei Grafikkarten in der Tat nicht so wichtig, da diese in der Pipeline gut versteckt werden können und immer größere Bursts geschrieben werden.


älter aber ganz interessant:

http://www.3dchips.net/story.php?id=3125

andr_gin
2006-01-20, 17:47:47
1.) Bei solchen Überlegungen ist eher die Latenz wichtig und da ist der L1 Cache sehr gut. Die Bandbreite beim L1 Cache liegt so im Bereich von 20-30 GB/s (beim Athlon64 und 2GHz) also weniger als bei aktuellen Grafikkarten (Geforce GTX-512 hat ca. 55GB/s), aber die Latenz ist wesentlich besser. Der Cache ist da für kleine Datenhäppchen, die angefordert werden und da ist die Bandbreite ziemlich egal. Wenn z.B. nur 8 Byte angefordert werden, dann dauert das bei Dual Channel DDR400 nur ca. 2,5ns, während die Latenz ca. 50ns dauert also spielt die Bandbreite nicht wirklich eine große Rolle. Der Grund, warum die Bandbreite so wichtig ist, liegt darin, dass durch das Data Prefetching auch schon Daten vom RAM in den Cache gelesen werden, die nicht wirklich benötig werden. Wäre das nicht der Fall (wie zu Zeiten des Pentium 3), dann würde man weitaus weniger RAM-Bandbreite brauchen. Beim Athlon hat Single Channel SD-RAM auch schon ausgereicht, der nur 1/6 der Bandbreite wie jetzt der DC DDR400.

2.) Der Grund, warum die Grafikkarten nicht cacheabhängig sind liegt darin, dass die Befehle nicht so universell sind. Es wird viel regelmäßiger auf den Speicher zugegriffen und nicht so kreuz und quer, wo man viele Daten in den Cache lesen muss.

Spasstiger
2006-01-20, 18:56:29
Die einzige GPU, die ich kenne, wo mehr als nur ein paar KB Speicher onchip sind, ist der R500 mit seinen 10 MB embedded DRAM. Ist der der embedded Ram dort ein extra Chip, der einfach nur sehr breit angebunden ist?

zeckensack
2006-01-20, 19:04:57
Ja, sie haben Cache, aber der ist nicht vergleichbar mit dem der CPUs. Es sind nur ein paar KB hier und da, z.B. für Texturen. Für 8x8 Texel muß es reichen (um 2x2 DXTC-Blöcke entpacken zu können), ein wenig mehr wird es wohl sein. Dann gibt es da noch den Primitive Assembly Cache, der die letzten drei transformierten Vertices halten kann und den Vertex Cache, der noch ein paar mehr verträgt. Und dann noch verschiedene weitere.Ack.Sehr breit? Naja bei AMD ist die L1 Cache Anbindung 128 Bit. Bei 2,4GHz sind das gerade mal ~38,4GiB/sek.GB/s, nicht GiB/s.<...> L1 mit 256 Bit angebunden ist (~121GiB/sek bei 3,8GHz).Nochmal das gleiche, trotz "ungefähr"-Zeichen. Das exakte Ergebnis wäre 121,6GB/s.
121GiB/s dagegen sind fast 130GB/s, und das stimmt auch "ungefähr" nicht.Aktueller GDDR3 RAM mit 800MHz und 256 Bit Anbindung hingegen schafft 65 GiB/sek.Nein. 800M/s*2*32 Byte=51,2GB/s.

gisbern
2006-01-20, 19:21:27
eine weitere sache, die mich interessieren würde : sind die logikschaltungen ausschliesslich aus transistoren aufgebaut ? und liegt die logik dann darin, daß diese verschiedenst miteinander verknüpft sind ? und wie wird jeder einzelne Transistor angesteuert ?

Spasstiger
2006-01-20, 19:25:15
eine weitere sache, die mich interessieren würde : sind die logikschaltungen ausschliesslich aus transistoren aufgebaut ?

Japp.

Die wichtigste Transistorschaltung ist der Addierer:
http://de.wikipedia.org/wiki/Volladdierer
Damit lassen sich prinzipiell schon alle Rechnungen durchführen.

Z.B. der Sinus als Summe dargestellt:
http://de.wikipedia.org/math/5/d/f/5df730f4a35dcff10276884aa81a2532.png

Coda
2006-01-20, 19:31:36
Huh? Also als Basisblöcke würde ich jetzt eher NAND, NOR, usw. bezeichnen, aber doch nicht VAs.

Spasstiger
2006-01-20, 19:34:08
Huh? Also als Basisblöcke würde ich jetzt eher NAND, NOR, usw. bezeichnen, aber doch nicht VAs.

Stimmt schon, eigentlich sind die Logikgatter verantwortlich für die Funktionalität, Volladdierer sind schon ein Anwendungsfall dafür. Aber da sich alle differenzierbaren Funktionen auf Summen zurückführen lassen, würden Addierer schon ausreichen.

Wobei ... wie ermittelt man den Kehrwert einer Zahl mit Logikgattern?

gisbern
2006-01-20, 19:34:20
cpus funzen dann ja im prinzip wie unser gehirn, welches ja auch eine riesige logikschaltung ist.....und da schließt sich dann wieder der kreis (-:

Coda
2006-01-20, 19:37:30
Unser Gehirn ist keine riesige Logikschaltung X-D

Wobei ... wie ermittelt man den Kehrwert einer Zahl mit Logikgattern?Man kann jede beliebige Funktion nur aus NANDs oder NORs erstellen.

Spasstiger
2006-01-20, 19:38:10
cpus funzen dann ja im prinzip wie unser gehirn.....und da schließt sich dann wieder der kreis (-:

Würde ich jetzt nicht behaupten, zumal ja noch nicht mal wirklich bekannt ist, wie unser Gehirn genau arbeitet.
Das Gehirn schafft außerdem seine Logik selbst, in dem es neue Verbindungen zwischen Synapsen anlegt (im Kindesalter).
Bei einem Prozessor ist die komplette Logik schon von Anfang an in Form der Logikgatter vorhanden.

Spasstiger
2006-01-20, 19:39:46
Unser Gehirn ist keine riesige Logikschaltung X-D

Man kann jede beliebige Funktion nur aus NANDs oder NORs erstellen.

Ok, das hab ich mir auch so gemerkt. Nur weiß ich grad nicht, wie man speziell auf die Umkehrfunktion kommt.
Dazu muss man sich wohl erst mal mit der Komplementdarstellung von Zahlen beschäftigen.

EDIT: Ups, das sollten keine zwei Postings werden. Habs grad verrafft. ;)

gisbern
2006-01-20, 19:41:03
aber zu einem bestimmten Zeitpunkt X ist jedem Inputstrom in das Gehirn ein definierter Outputstrom zugewiesen, insofern ist es definitiv eine Logikschaltung. Nur das halt bei 10 hoch 12 Zellen und 10 hoch 15 Verknüpfungen die Logik am Ende als Intelligenz gewertet werden kann.....

gisbern
2006-01-20, 19:42:10
und das Grundprinzip der Funktion unseres Gehirns ist bekannt.

gisbern
2006-01-20, 19:46:13
aber nochmal zu dem volladdierer : wie kann ich mir das nun praktisch vorsdtellen ? wird der Stromfluss durch die Transistoren behindert, oder erlaubt ? und wer setzt den Transistor auf ein oder aus ?

zeckensack
2006-01-20, 19:49:21
cpus funzen dann ja im prinzip wie unser gehirn, welches ja auch eine riesige logikschaltung ist.....und da schließt sich dann wieder der kreis (-:Ich hoffe für dich, dass dein Gehirn nicht aus Transistoren aufgebaut ist.
Ein Transistor hat drei Anschlüsse, nennen wir sie A,B und C, und schaltet A und C durch wenn ein ausreichender Strom zwischen B und C fließt.
(bzw beim FET: er schaltet die Strecke von A nach C durch, wenn die Spannung zwischen B und C einen Schwellwert überschreitet)

Ein Neuron (http://de.wikipedia.org/wiki/Neuron) dagegen zeichnet sich unter anderem dadurch aus, dass es viele "Anschlüsse" und viele "Schaltstrecken" hat. Zudem sind die "Durchschalt"-Zusammenhänge zwischen "Eingängen" und "Ausgängen" deutlich flexibler -- diese Zusammenhänge können sich "im Betrieb" verändern, sonst könnten wir nicht so richtig lernen und Erinnerungen "speichern" --, und sind auch nicht auf einfache An/Aus-Beziehungen beschränkt.

gisbern
2006-01-20, 19:53:13
du hast recht, es gibt bei unseren Neuronen weitere unzählige variablen, die das ganze verkomplizieren. am ende ist jedoch hinter diesem komplexen netzwerk keine Intelligenz versteckt, die Intelligenz ist das Netzwerk selbst. Und im Netzwerk werden Ströme geleitet, und die Intelligenz ist, wo der Strom von Punkt X am Ende ankommt, und dort bewirkt. Es ist zwar um längen komplexer als ne CPU, aber letztendlich dasselbe Prinzip.

gisbern
2006-01-20, 19:55:34
und lernen ist dann quasi nix anderes als neue Logikschaltungen anlegen

Piffan
2006-01-20, 19:56:39
Selbst wenn die Schalter im Computer mehr als nur zwei Zustände kennen würden oder sogar analog arbeiten würden, dann wäre der Unterschied zum Gehirn immer noch riesig.......

Man könnte ein Neuron durch eine Computersimulation darstellen, wenn man denn alle Feinheiten schon durchschauen würde. Aber der komplexe Zusammenhang eines ganzen Hirnes ist wieder ne ganz andere Dimension.

Vor allem sind die Chips nur auf elektrische Signale beschränkt, im Hirn spielen außerdem viele Substanzen eine Rolle. Bekanntestes Beispiel sind Drogen. :D

Kannst dem PC ja mal ne Tüte anbieten........

gisbern
2006-01-20, 19:58:52
aber letzten endes sorgen alle diese transmitter dafür, daß der stromfluss moduliert wird.

Piffan
2006-01-20, 20:00:09
und lernen ist dann quasi nix anderes als neue Logikschaltungen anlegen

Ach komm, lass stecken. So einfach kann man das leider nicht sehen.....

Zu dem Adder: Fang klein an, lerne ein bissel Boolesche Algebra, beschäftige dich mit der Funktion der Transistoren, und dann schau mal, wie die Gatter gestrickt werden.....Ist nicht soo schwer zu kapieren, aber auch nicht gerade so zwischen Tür und Angel....

gisbern
2006-01-20, 20:01:57
haste n paar literaturempfehlungen ? interessiert mich wirklich.

und dir empfehl ich neurophysiologie aus nem Physiologielehrbuch. ist wirklich sauspannend.und öffnet die augen wie wir da oben funzen

zeckensack
2006-01-20, 20:02:16
Man könnte ein Neuron durch eine Computersimulation darstellen, wenn man denn alle Feinheiten schon durchschauen würde.Man durchschaut vielleicht nicht alle Feinheiten, aber trotzdem gibt es solche Simulatoren schon eine ganze Weile (http://crl.ucsd.edu/innate/tlearn.html). Das ganze ist nicht einfach zu handhaben, und die Performance ist auch nur bei kleinen Netzen (<<1000 Neuronen) einigermaßen akzeptabel.Aber der komplexe Zusammenhang eines ganzen Hirnes ist wieder ne ganz andere Dimension.Grünau.Vor allem sind die Chips nur auf elektrische Signale beschränkt, im Hirn spielen außerdem viele Substanzen eine Rolle. Bekanntestes Beispiel sind Drogen. :DJa, die Chemie ist außerordentlich wichtig, und eben nicht mal im Ansatz simulierbar.

Piffan
2006-01-20, 20:02:17
aber letzten endes sorgen alle diese transmitter dafür, daß der stromfluss moduliert wird.

Es gibt im Hirn mehr als nur Transmitter. Endorphine zum Beispiel. Oder Hormone haben Einfluss auf die Stimmung....Hormone übermitteln selbst die Infos....

Die Hirnfunktion nur aufs elektrische zu reduzieren scheint mir etwas brachial vereinfacht....

Piffan
2006-01-20, 20:03:48
haste n paar literaturempfehlungen ? interessiert mich wirklich.

und dir empfehl ich neurophysiologie aus nem Physiologielehrbuch. ist wirklich sauspannend.und öffnet die augen wie wir da oben funzen

Tja, leider bin ich schon zu alt, um diesbezüglich noch Illusionen zu haben. Faszinierend ja, aber "Augen öffnen"? Ich weiß, dass ich nichts weiß.... :rolleyes:

gisbern
2006-01-20, 20:05:20
ich reduziere sie doch nicht auf das elektrische, nur ist der Strom am ende der, der dich denken lässt, der deinen arm beim tennisspielen bewegt, der die richtige antwort auf ne frage sagt. der input ins gehirn ist strom, und der output ist auch strom.

Piffan
2006-01-20, 20:09:31
ich reduziere sie doch nicht auf das elektrische, nur ist der Strom am ende der, der dich denken lässt, der deinen arm beim tennisspielen bewegt, der die richtige antwort auf ne frage sagt. der input ins gehirn ist strom, und der output ist auch strom.

So gesehen stimmt das irgendwie. Die Reize der Umwelt lösen Potential- Änderungen aus, die bis ins Hirn laufen, die SCHNELLE Antwort wiederum ist auch elektrisch. Nur ist die "Elektrik" für die schnellen Reaktionen da, sprich Fortbewegung, Interaktion mit der Umwelt. Im inneren des Körpers gibts noch andere Informantionsflüsse, sprich Hormone.......

gisbern
2006-01-20, 20:13:18
jap, volkommen richtig. das gehirn erzeugt selbst keine potenziale ( es gibt da ausnahmen, spielen aber für die verarbeitung keine große rolle ), die inputs kommen von den vielen sensoren ( augen, ohren,tastsinn,schmecken,riechen), die information in strom umformen. und alles was du tust ist ja am ende wieder ein stromstoß in irgendeine muskelzelle,was dann z.b. in sprache resultiert, oder in eine drüse, die speichel produziert, oder sonstewas.......

gisbern
2006-01-20, 20:16:27
und das was du tust ist letztendlich nichts anderes als eine konsequenz von den inputs ( jetzt könnten wir im anschluss gleich über die illusion des freien willens diskutieren (-: )

Spasstiger
2006-01-20, 20:21:00
haste n paar literaturempfehlungen ? interessiert mich wirklich.


Google sollte dir auch genügend gute Informationen liefern. Einfach mal nach "Logikgatter", "Digitaltechnik" oder "logische Verknüpfungen" suchen. Den Link zum Volladierer-Artikel bei Wikipedia hab ich ja schon weiter oben geliefert.

Gast
2006-01-20, 20:29:21
Haben GPUs Cache, vergleichbar mit CPUs ?
Ich bin erstaunt, wie weit ihr schon auf Seite 2 vom Thema abgekommen seid. ;)

Nochmal zum Threadstarter:
Wie schon zigfach gesagt: Ja, sie haben Cachest und nein, der ist nicht mit CPU-Cache vergleichbar. GPUs sind eigentlich eher beschränkt programmierbare, massiv parallele Streaming-Prozessoren. Prinzipiell ähnlich, wie der Cell-Prozessor. Dessen SPEs/SPUs haben auch keinen "richtigen" Cache, sondern lediglich eigenen Programmspeicher von 256kB.


Q

Piffan
2006-01-20, 20:45:55
Ich bin erstaunt, wie weit ihr schon auf Seite 2 vom Thema abgekommen seid. ;)



Q

Solange die Mods nicht dazwischen schlagen und sonst keiner meckert.....Die Antworten sind doch schon gegeben worden, da kann man doch noch etwas schwatzen... :cool:

IVN
2006-01-20, 21:05:18
So gesehen stimmt das irgendwie. Die Reize der Umwelt lösen Potential- Änderungen aus, die bis ins Hirn laufen, die SCHNELLE Antwort wiederum ist auch elektrisch. Nur ist die "Elektrik" für die schnellen Reaktionen da, sprich Fortbewegung, Interaktion mit der Umwelt. Im inneren des Körpers gibts noch andere Informantionsflüsse, sprich Hormone.......
Man koennte aber sagen,das der Strom fuer die Logik,die Chemie (verschiedene Hormone,oder Stimulatoren) aber fuer die Emotionen,Moral und Ethik verantwortlich ist.(fuer das was einen Menschen von einen inteligenten Roboter unterscheidet)

Piffan
2006-01-20, 21:38:02
Man koennte aber sagen,das der Strom fuer die Logik,die Chemie (verschiedene Hormone,oder Stimulatoren) aber fuer die Emotionen,Moral und Ethik verantwortlich ist.(fuer das was einen Menschen von einen inteligenten Roboter unterscheidet)

Keine Ahnung ob das so ist. Vordergründig plausibel.......

Vielleicht ist der Strom auch nur nötig, damit schnell Distanzen überbrückt werden können oder eine eindeutige Zuordnung zwischen Sender und Empfänger besteht. Substanzen können sich ja nur durch Diffusion oder Konvektion ausbreiten und ihre Konzentration bedingt einen Wirkradius. Hier sind die angesprochenen Zelltypen adressiert, aber keine einzelen Zellen wie bei der elektrischen Signalübermittlung.....

Innerhalb der Neurone gibts bestimmt keine klare Trennung im Sinne von elektrischer Logik und chemischen Gefühlen. Wahrscheinlich ist die Chemie direkt in die logischen Operationen eingebaut.
Aber wie gesagt, denken kann man sich viel, die Realität ist auf alle Fälle verwickelter als man das als Otto Normal ansatzweise ahnen kann.

gisbern
2006-01-20, 22:09:57
ja, wir werden da noch ne menge dran zu forschen haben. gerade Emotionen sind eine durch Strom - input-output-geschichte nicht so einfach zu beschreibende Sache. die Frage ist nur, kann der Mensch sich selbst verstehen ? gibt doch irgendsoein Gesetz, daß ein System nur in der Lage ist, Dinge von niedrigerer Komplexität zu verstehen......