+ All Categories
Home > Documents > Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera...

Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera...

Date post: 17-Aug-2019
Category:
Upload: phungbao
View: 214 times
Download: 0 times
Share this document with a friend
21
Current and Emerging Architectures Multi-core Architectures and Programming Adel El-Rayyes Hardware-Software-Co-Design, Friedrich-Alexander-Universität Erlangen-Nürnberg 9. Mai 2012
Transcript
Page 1: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Current and Emerging ArchitecturesMulti-core Architectures and Programming

Adel El-Rayyes

Hardware-Software-Co-Design, Friedrich-Alexander-UniversitätErlangen-Nürnberg

9. Mai 2012

Page 2: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Inhalt

• Überblick über Architekturen

• Tilera Architektur

• Convey Computers HC-1 \ HC-2 Architektur

• Intel Many Integrated Core Architecture (MIC)

• Zusammenfassung

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 2

Page 3: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Überblick über Architekturen

• Graphics Processing Units

• Accelerated Processing Units

• Digital Signal Processors

• Adapteva Epiphany

• TILE64 \ TILEPro64

• FPGAs: Convey Computer HC-1 & HC-2

• Intel MIC

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 3

Page 4: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

APUs: Beispiel AMD Llano

CPU und GPU auf einemStück Silicium

Beispiele:• AMD Fusion• Intel Sandy\Ivy-Bridge• NVIDIA Project Denver

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 4

Page 5: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

DSPs: Beispiel Avantechs DSPC-8681

• 4 (TI) TMS320C6678• 512 SP gigaflops at 50

watts (Nvidia Tesla-20:1331 SP gigaflops at225 watts)→energieeffizient

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 5

Page 6: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Adapteva Epiphany

• Momentan max. 16Kerne• Modelle mit mehreren

1000 Kerne inEntwicklung• Low Latency On-Chip

Network, ähnlich TileraArchitektur.• Stark bzgl. FP• Aber nur als FP

Koprozessor gedacht

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 6

Page 7: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Tilera Architektur - Überblick

• besteht aus sog. Tiles("Kacheln")• 1 Tile = 1 Prozessor• Tiles untereinander mit 5

Netzwerken verbunden("iMesh")→ 1.28 Tbps hinein undheraus aus einem Prozessor• 4 x DDR2 Controller→ 200 GbpsSpeicherbandbreite• 40 Gbps Bandbreite an

Peripherie:• 2 mal 4x PCIe• 2 XAUI Schnittstellen• 2 mal Gigabit Ethernet

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 7

Page 8: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Tilera Architektur - iMesh

Das iMesh besteht aus 5 separaten Netzwerken:• User Dynamic Network (UDN):

Zur Kommunikationen zwischen Threads, des Anwenders. Umgeht dieNutzung von shared-memory.• I/O Dynamic Network (IDN):

Anbindung von I/O Geräten, sowohl zur Steuerung als auch zurDatenübertragung.• Memory Dynamic Network (MDN):

Zur Kommunikation des Caches mit dem Hauptspeicher über dieDDR2-Controller.• Tile Dynamic Network (TDN):

Dient dem Tile-to-Tile Cache Transfer, Anfragen laufen über das TDN undAntworten zurück über das MDN (L3).• Static Network (STN):

Das einzige nicht packet-basierte Netzwerk geeignet um Datenströme mitgeringer Latenz von einem Tile zum anderen zu übertragen.

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 8

Page 9: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Tilera Architektur - Aufbau eines Tiles

Ein Tile(TILE64) besteht :• Dem Prozessor:• 3-way VLIW CPU, 64-bit

instruction size• SIMD instructions: 32, 16,

and 8-bit ops• Instructions for video (e.g.,

SAD) and networking (e.g.,hashing)

• Cache L1&L2:• L1 cache: 8KB I, 8KB D, 1

cycle latency• L2 cache: 64KB unified, 7

cycle latency• Cache integrated 2D DMA

engine

• und einem Switch

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 9

Page 10: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Tilera Architektur - Programmierung

Beispiel mit pthreads:

void run_threads(int count, void*(*func)(void*)){

for (int i = 1; i < count ; i++){if (pthread_create(&threads[i], NULL, func, (void*)i) != 0)tmc_task_die("pthread_create() failed.");

}(void) func((void*) 0);

}

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 10

Page 11: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Tilera Architektur - Zusammenfassung

Tilera Architektur - Zusammenfassung• Neuere Modelle unterstützen FP in Hardware, davor nur Emulation.• Gruppierung von Kernen in sog. Domänen in denen eine Applikation\OS läuft,

zum Schutz vor unauthorisierten Zugriffen.• Unterstützt SMP Linux und bietet einen ANSI standard C\C++ Compiler.→ Einfache Portierung existierender Applikationen.• Großer dezentraler L3 Cache (alle L2 Caches gebündelt).• Energieeffizienz:

ein einzelner Kern braucht weniger als 1W und Kerne könnenein-\ausgeschaltet werden, je nach Bedarf.• Skalierbarkeit:

Prozessoren mit mehr als 64 Kernen bereits Verfügbar und weiterer Ausbaugeplant.

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 11

Page 12: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Convey Computer HC-1 - Überblick

• Mischung aus x64 Intel Xeon Prozessor und mehreren FPGAs alsKoprozessoren (Hybrid-Core Architektur).• Passt auf spezielles Intel Mainboard für Convey gefertigt.• Hauptprozessor über FSB mit Koprozessoren verbunden.

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 12

Page 13: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Convey Computer HC-1 - Architektur 1

• 4 DIMM Channels für den x64-Prozessor und 16 DIMM Channels für dieFPGAs verbunden über FSB (Cache Koheränz).• Spezielles Speicherzugriffsystem, das auch kleinere (8-byte) Übertragungen

über Scatter-Gather DIMMs erlaubt, führt zu höherer Peak-Bandwidth.• Koprozessor besteht aus vier Xilinx Virtex5/6 FPGAs.

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 13

Page 14: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Convey Computer HC-1 - Architektur 2

• System besteht aus einem Intel (2/4-Kern) Xeon Prozessor• der Application Host Engine• und Application Engines, den FPGAs• AEH sendet an AEs die nötige "Personality"• Durch direkte Verbindung von x64 und FPGA über FSB kann der

Hauptspeicher von beiden Seiten genutzt werden.

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 14

Page 15: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Convey Computer HC-2 - Nachfolgemodell

• Neue Xeon Prozessoren (Westmere und Sandy-Bridge) 4/6/8-KerneProzessoren.• wechsel von FSB auf PCIe (Cache Koheränz bleibt erhalten)→ weiterer CPU Sockel frei für zusätzlichen Xeon Prozessor.• Mehr Arbeitsspeicher Hostseitig und mehr I/O Bandbreite.

(1x PCIe Gen2, 4x SATA→ 5x PCIe Gen3, 8x SATA, 2x Intel I/O Module)

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 15

Page 16: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Convey Computer HC-1/2 - Zusammenfassung

• Sehr flexibele Einsatzmöglichkeiten über "Personalities".• Kein großer Programmieraufwand nötig, Portierung von C/C++ Code über

Convey Compiler.• Falls keine passende "Personality" vorhanden ist, ist grösserer

Programmieraufwand in VHDL nötig.• Gut geeignet für "Data-intensive" Aufgaben, wegen hoher Speicherbandbreite

durch Speicherzugriffsmuster.• Verfügbar in verschiedenen Konfigurationen: HC-1/ex oder HC-2/ex• Starke Konkurrenz zu gängigen Server Systemen in HPC-Clustern, da

platzsparender und energieeffizienter als übliche x64-Server.

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 16

Page 17: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Intel MIC - Larrabee• Mehrere Pentium 1

artige Prozessoren.• x86-Architektur mit

verb. Vektoreinheit.• Cache Koheränz

über RingbusSystem.• Einfach

Programmierung dax86.• gezeigte

Peak-Performancevon knapp über1TFLOP(DP).• Eingestellt da nicht

überzeugend bzgl.3D-Leistung.

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 17

Page 18: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Intel MIC - Single-Chip Cloud Computer

• 48 Pentium 1 ähnliche Prozessoren auf einem Die.• Verbunden über ein 6x4 Mesh.• 4 DDR3 Controller• 2 Prozessoren bilden ein "Tile" und hängen an einem Switch.• Kerne in 4er-Gruppen dynamisch an- und ausschaltbar.

• selbeCache-Austattungwie Larrabee• 25-125W

Stromverbrauch• nur zu

Forschungszwecken• Kein Hardware

Cache-Kohärenz

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 18

Page 19: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Intel MIC - Knights Ferry

• Kombination aus Forschungsergebnissen von Larrabee und SCC.• Als Koprozessor in Serversystemen gedacht, über den PCIe-Bus.• Technische Daten:• 32 Kerne @ 1.2GHz mit 4-fach Hyperthreading→ 128 threads.• 8MB Koherenter Cache• 1-2GB GDDR5• Vorläufer zu Knights Corner zu Entwicklungszwecken.

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 19

Page 20: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Intel MIC - Programmiermodell

Klassische x86 Programmierung mit OpenMP und einigen neuen Intel MICspezifischen Befehlen.

main(){

double pi = 0.0f; long i;...#pragma offload target (mic)#pragma omp parallel for reduction(+:pi)for (i=0; i<N; i++) {double t = (double)((i+0.5)/N);pi += 4.0/(1.0+t*t);

}printf("pi = %f\n",pi/N);

}

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 20

Page 21: Current and Emerging Architectures - Multi-core ... · Tilera Architektur - Zusammenfassung Tilera Architektur - Zusammenfassung Neuere Modelle unterstützen FP in Hardware, davor

Zusammenfassung

• Es gibt mehr als CPU und GPU• Da CPU+GPU nicht die ideale Lösung aller Multicore Probleme ist entstehen

weitere Architekturen.• Spezialisierung findet auch unter Multicore Architekturen statt.• Treibende Faktoren: energetische- und räumliche-Effizienz.

9. Mai 2012 | Adel El-Rayyes | Hardware-Software-Co-Design | Current and Emerging Architectures 21


Recommended