Die CUDA Programmieranleitung besagt, dassBedeutung der Bandbreite in CUDA und warum es wichtig ist
„Bandbreite einer der wichtigsten Gating-Faktoren für die Leistung ist. Fast alle Änderungen an Code sollen im Rahmen gemacht werden wie sie die Bandbreite beeinflussen. "
Er fährt fort, theoretische Bandbreite zu berechnen, die in der Größenordnung von Hunderten von Gigabyte pro Sekunde liegt. Ich weiß nicht, warum die Anzahl der Bytes, die man im globalen Speicher lesen/schreiben kann, eine Reflexion darüber ist, wie gut ein Kernel optimiert ist.
Wenn ich einen Kernel habe, der eine intensive Berechnung von Daten in Shared Memory und/oder Registern durchführt, mit nur einem einzigen Lesevorgang am Anfang und am Ende aus dem und zum globalen Speicher, wird die effektive Bandbreite sicher sein klein, während der Kernel selbst sehr effizient sein kann.
Kann jemand in diesem Zusammenhang die Bandbreite weiter erklären?
Dank