CUDA Academy · Lektion

Ein mentales Modell der Hierarchie

Ordnen Sie Daten dem passenden Speicherbereich zu.

Lektion 4 von 413 Schritte

Ein mentales Modell der Hierarchie ist eine kostenlose CUDA Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des CUDA Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der CUDA Academy-Kurs umfasst insgesamt 4 Lektionen.

Eine Pyramide der Kompromisse

Stellen Sie sich den GPU-Speicher als eine Pyramide vor. Die Spitze ist winzig und blitzschnell, die Basis dagegen riesig, aber langsam. Ihre Aufgabe ist es, jede Ebene sinnvoll zu nutzen.

Spitze: Register

An der Spitze stehen Register: pro Thread, am schnellsten und sehr begrenzt. Halten Sie Ihre am häufigsten benötigten Arbeitswerte nach Möglichkeit dort.

Als Nächstes: Shared Memory

Direkt darunter liegt der Shared Memory, ein auf dem Chip befindlicher Zwischenspeicher, der für alle Threads eines Blocks sichtbar ist. Er dient der schnellen Zusammenarbeit innerhalb eines Blocks.

Seitlicher Pfad: Konstanten-Cache

Daneben befindet sich der Konstanten-Cache, ideal für kleine schreibgeschützte Werte, die ein Warp gleichförmig liest und mit einem Abruf broadcastet.

Basis: Globaler Speicher

Die breite Basis bildet der globale Speicher: Gigabytes groß und für alle sichtbar, aber mit hoher Latenz. Er enthält Ihre großen Ein- und Ausgaben.

Die Falle: Lokaler Speicher

Vorsicht beim lokalen Speicher. Er klingt nach einem nahegelegenen Bereich, liegt aber im langsamen DRAM und wird nur verwendet, wenn Register überlaufen. Vermeiden Sie es, sich auf ihn zu verlassen.

Der Gültigkeitsbereich bestimmt den Speicherbereich

Wählen Sie abhängig davon, wer die Daten benötigt. Ein einzelner Thread benötigt Register, ein gemeinsam arbeitender Block den Shared Memory, und alle Threads den globalen Speicher.

Auch die Lebensdauer ist entscheidend

Register und Shared Memory verschwinden, wenn ein Kernel endet, der globale Speicher bleibt jedoch über Kernelstarts hinweg erhalten. Stimmen Sie den Speicherort darauf ab, wie lange die Daten bestehen müssen.

Die goldene Regel

Das erfolgreiche Muster lautet: einmal aus dem globalen Speicher laden, im schnellen Speicher auf dem Chip berechnen und anschließend einmal zurückschreiben. So minimieren Sie den Datenverkehr im langsamen globalen Speicher.

Kapazität kostet Belegung

Wenn Sie pro Block viele Register oder viel Shared Memory verwenden, können weniger Blöcke gleichzeitig ausgeführt werden. Die Belegung ist ein Gleichgewicht, das Sie fortlaufend optimieren.

Alles zusammenführen

Gute Kernel leiten jedes Datenelement gezielt auf die passende Ebene. Diese eine Gewohnheit unterscheidet langsamen Code von schnellem CUDA-Code. 💪

Kurzer Test

Zwei Threads im SELBEN Block müssen Zwischenergebnisse gemeinsam nutzen. Welcher Speicherbereich eignet sich am besten?

Zusammenfassung: Daten der passenden Ebene zuordnen

Sie haben eine mentale Übersicht erstellt: Register, Shared, Constant und Global tauschen Geschwindigkeit gegen Größe und Gültigkeitsbereich. Daten der richtigen Ebene zuzuordnen, ist der entscheidende Schritt. 🧠

Kostenlos starten

Lerne C++ mit einem KI-Tutor — kostenlos

Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.

Kurse
30
Lektionen
120

Häufig gestellte Fragen

Ist die Lektion „Ein mentales Modell der Hierarchie“ kostenlos?

Ja — der vollständige Text von „Ein mentales Modell der Hierarchie“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des CUDA Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der CUDA Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Ein mentales Modell der Hierarchie“?

Ordnen Sie Daten dem passenden Speicherbereich zu. Du übst CUDA Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um CUDA Academy zu starten?

Keine Vorkenntnisse erforderlich. CUDA Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.

Wie lange dauert die Lektion „Ein mentales Modell der Hierarchie“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser CUDA Academy-Lektion Code schreiben und ausführen?

Ja. Jede CUDA Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Register und lokaler Speicher
  2. Kompromisse beim globalen Speicher
  3. Konstanter Speicher und sein Cache
  4. Ein mentales Modell der Hierarchie
← Zurück zu CUDA Academy