2.7 KiB
📘 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 | 128–1024 KB | 256 KB |
| L3 Cache | - | 2–8 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