vault backup: 2025-07-07 19:57:44
This commit is contained in:
110
Semester 6/COMARCH/Zusammenfassung/Vorlesung 8a.md
Normal file
110
Semester 6/COMARCH/Zusammenfassung/Vorlesung 8a.md
Normal file
@@ -0,0 +1,110 @@
|
||||
## 📘 **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
|
||||
|
||||
---
|
||||
Reference in New Issue
Block a user