Files
TI-Studium-Mitschriften/Semester 6/COMARCH/Zusammenfassung/Vorlesung 8a.md
2025-07-07 19:57:44 +02:00

2.7 KiB
Raw Blame History

📘 Zusammenfassung: V8a Intel und Arm Computerarchitektur


Power Efficiency: ARM vs. Intel

ARM Cortex-A8 Intel Core i7-920
Markt Mobile Devices Server, Desktop
TDP (Thermal Power) 2 W 130 W
Taktfrequenz 1 GHz 2,66 GHz
Kerne pro Chip 1 4
Floating Point Unit Nein Ja
Multiple Issue Statisch, in-order Dynamisch, OoO + Spec.
Pipeline-Stufen 14 14
Branch Prediction 2-Level 2-Level
L1 Cache 32 KB I, 32 KB D 32 KB I, 32 KB D
L2 Cache 1281024 KB 256 KB
L3 Cache - 28 MB (shared)
Max Instr/Takt 2 4

🔄 Pipelines im Vergleich

ARM Cortex-A8

  • Pipeline: Statisch geplante Ausführung (in-order)

  • Einfachere Hardware → energieeffizient

  • Optimiert für mobile Geräte

Intel Core i7

  • Pipeline: Dynamisch, out-of-order, mit Speculation

  • Komplexere Hardware → höherer Energiebedarf

  • Optimiert für High-Performance-Anwendungen


🧮 Instruction-Level Parallelism (ILP)

💡 Multiple Issue:

  • ARM: Statische Planung (Compiler entscheidet Reihenfolge)

  • Intel: Dynamische Planung (CPU entscheidet zur Laufzeit)

  • Dynamische Planung bietet bessere Ausnutzung, aber höheren Hardwareaufwand.

🛠 Matrix-Multiplikation (Beispiel)

  • C-Code (mit Loop Unrolling & SIMD):

    • Nutzt AVX-Befehle (_mm256)
  • Assembly-Code:

    • Parallele Berechnungen mit YMM-Registers (256-Bit)

    • Beispiel: vmulpd, vaddpd, vbroadcastsd


⚠️ Fallacies & Pitfalls

🚧 Irrtümer

  • „Pipelining ist einfach“: Nur die Grundidee ist einfach, Details (Hazard Detection, Forwarding) sind komplex.

  • „Pipelining ist unabhängig von Technologie“: Fortschritte in Halbleitern machten es erst praktikabel.

💥 Probleme

  • Komplexe ISAs (z.B. x86) erschweren effiziente Pipeline-Implementierung.

  • Delayed Branches: erhöhen Designaufwand

  • IA-32 Micro-Op-Ansatz: wandelt komplexe Instruktionen in einfache Mikro-Operationen um


📜 Fazit

ISA-Design beeinflusst Datapath- und Steuerwerk-Design und umgekehrt
Pipelining steigert Durchsatz, nicht Latenz
Hazards (structural, data, control) sind zentrale Herausforderungen
ILP steigert Parallelität, aber nur begrenzt durch Abhängigkeiten
Komplexität → Energieverbrauch (Power Wall)


📝 Für die Klausur merken

Unterschied ARM ↔ Intel (In-order vs. OoO, TDP, Pipelines)
Statische vs. Dynamische Planung
Vor- & Nachteile von ILP und Multiple Issue
Fallacies (Irrtümer) beim Pipelining-Design
Warum einfache ISAs (RISC) Pipelines erleichtern