Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Energieverbrauch & Verlustleistung

Ähnliche Präsentationen


Präsentation zum Thema: "Energieverbrauch & Verlustleistung"—  Präsentation transkript:

1 Energieverbrauch & Verlustleistung
Reznicek Alexander

2 Energie vs. Verlustleistung
(elektrische) Energie E: 1Ws = 1J 1 Wh = 3600 Ws gespeichert in Energiespeichern wie Akkus Verlustleistung P: Einheit Watt Ein Chip wird schneller, je höher die Spannung ist Ein Chip wird schneller, je kühler er ist Weniger Verlustleistung  Weniger Temperatur  Mehr Performance Um den Akku von mobilen Geräten zu schonen muss Energie gespart werden, um die TDP (Termal Design Power) einzuhalten Verlustleistung (Temperatur!) Verlustleistung sparen bedeutet nicht immer gleich Energie sparen! (vgl. “race to idle” vs. Taktanpassung)

3 Trends Laptops/PCs mit geringerer Verlustleistung in den letzten Jahren 2010: Laptop 35W, PC W TDP 2015: Laptop 15W, PC 74-84W TDP Smartphones/Embedded-Systems mit höherem Energieverbrauch 2010: 1500mAh durchschnittlich 2015: 3000mAh bei vergleichbarer Akkulaufzeit Desweiteren Temperaturprobleme in einigen High-End Geräten Seit 2008 mehr Notebooks als PCs verkauft Auch 2015 steigt die Zahl der verkauften Smartphones

4 Warum also Stromsparen?
Akkutechnik hat sich in den letzten 20 Jahren nicht viel verbessert, Systemleistung hat sich aber stark erhöht (auch durch erhöhtem Verbrauch) Erhöhter Verbrauch niedrigere Laufzeit Einhalten sinnvoller TDP-Limits Umwelt-/Ökonomiegedanken Bspw. EU-Verordnung Nr. 617/2013: Quadcore-PC mit idle-Verbrauch max. 59 W ( W!)

5 Verlustleistung Leistung, die bei Schaltvorgängen verbraucht wird
Dynamische Verlustleistung C·V2·A·f (Kapazität, Spannung, Frequenz, Aktivitätsfaktor) Leistung, die bei Schaltvorgängen verbraucht wird Statische Verlust- Leistung wird immer mehr zum Problem Statische Verlustleistung: Leistung, die ohne Schaltvorgängen bei konstantem Eingang verbraucht wird

6 Stromsparen In HW In SW Spezielle Hardwarebausteine Strukturbreite
Schaltungsoptimierung Spannungs-/Frequenzvariation Clock-/Power Gating In SW Compiler Programmierstil

7 Spezielle Hardwarebausteine
Hardware für spezielle Aufgaben, die oft ausgeführt werden Timer Codecs Grafikprozessoren Custom-ASICs/FPGAs/… Beispiel: Video Codec H264 H265 CPU 129 W 132 W IGP 90 W 120 W gGPU (fixed-function HEVC!) 119 W 130 W

8 Bitcoins – SHA256 Bezeichnung MH/s Watt Preis in € MH/s/W Raspberry Pi
0,2 3,75 20 0,053 Raspberry Pi2 1,76 3,5 35 0,5 Intel Core i7 3930k (6 Kerne!) 66,6 140 500 0,47 Grau = CPU, Grün = GPU, Blau = FPGA, Orange = ASIC

9 Bitcoins – SHA256 Bezeichnung MH/s Watt Preis in € MH/s/W Raspberry Pi
0,2 3,75 20 0,053 Raspberry Pi2 1,76 3,5 35 0,5 Intel Core i7 3930k (6 Kerne!) 66,6 140 500 0,47 NVIDIA GTX 590 193 360 600 0,53 AMD Radeon R9 280X 825 214 250 3,86 Grau = CPU, Grün = GPU, Blau = FPGA, Orange = ASIC

10 Bitcoins – SHA256 Bezeichnung MH/s Watt Preis in € MH/s/W Raspberry Pi
0,2 3,75 20 0,053 Raspberry Pi2 1,76 3,5 35 0,5 Intel Core i7 3930k (6 Kerne!) 66,6 140 500 0,47 NVIDIA GTX 590 193 360 600 0,53 AMD Radeon R9 280X 825 214 250 3,86 Terasic DE2-115 80 10 8 BitForce SHA256 Single 832 10,4 Grau = CPU, Grün = GPU, Blau = FPGA, Orange = ASIC

11 Bitcoins – SHA256 Bezeichnung MH/s Watt Preis in € MH/s/W Raspberry Pi
0,2 3,75 20 0,053 Raspberry Pi2 1,76 3,5 35 0,5 Intel Core i7 3930k (6 Kerne!) 66,6 140 500 0,47 NVIDIA GTX 590 193 360 600 0,53 AMD Radeon R9 280X 825 214 250 3,86 Terasic DE2-115 80 10 8 BitForce SHA256 Single 832 10,4 AntMiner U1 1600 2 30 800 Grau = CPU, Grün = GPU, Blau = FPGA, Orange = ASIC

12 Bitcoins – SHA256 Bezeichnung MH/s Watt Preis in € MH/s/W Raspberry Pi
0,2 3,75 20 0,053 Raspberry Pi2 1,76 3,5 35 0,5 Intel Core i7 3930k (6 Kerne!) 66,6 140 500 0,47 NVIDIA GTX 590 193 360 600 0,53 AMD Radeon R9 280X 825 214 250 3,86 Terasic DE2-115 80 10 8 BitForce SHA256 Single 832 10,4 AntMiner U1 1600 2 30 800 AntMiner S3 441000 340 390 1297 AntMiner S5+ 3436 2400 2247 Grau = CPU, Grün = GPU, Blau = FPGA, Orange = ASIC

13 Strukturbreite Kleinere Strukturbreite –
kleinere Abstände/Transistoren geringerer Stromverbrauch Von einem Full-Node zum nächsten ~30% mehr Effizienz

14

15 Strukturbreite 14nm!=14nm Schaltströme geringer bei gleicher Leistung
Kleinere Gates liefern allerdings weniger Widerstand  Problem der Leckströme 30% mehr Effizienz nicht mehr durch Änderung der Strukturbreite allein

16 Bulk vs. FinFET Statt einer Finne mehrere erhöht den Strom der fließt  schneller Erhöht aber auch den Stromverbrauch

17 Schaltungsoptimierung
Breiteres Gate verringert Leckströme der Transistor ist dann allerdings langsamer Beispiel: NVIDIA Fermi 400er vs. 500er Serie ca. 10% weniger Energieverbrauch wurde erreicht Verwendung anderer Materialien z.B. SOI (Silicon on Insulator) oder HKMG (High-k Metal Gate) für bessere Isolation TSV (Through Silicon Via) Beispiel: Samsung 3D-NAND

18 Spannungs-/Frequenzvariation
Senkung der Frequenz senkt den Verbrauch über niedrigere Ströme Senkung der Spanunng senkt den Verbrauch über Spannung und Ströme Bei PCs über die C- und P-States des ACPI Vom Betriebssystem vorgegeben, von der CPU in eigene Stati umgesetzt Alternativ vom Prozessor selbst bestimmt (Speed Shift) Beispiele: Speed Step, Power Now!, Turbo Boost/Core Eingebette Systeme verwenden Power-States Beispiel: DVFS (Dynamic Voltage and Frequency Scaling)

19 Spannungs-/Frequenzvariation
Freescale i.MX 28 DVFS: Verwendung einer OPP-List (Operating Performance Point): Für jede mögliche Frequenz steht hier eine zu verwendende Spannung Bei Frequenzsenkung wird zuerst Frequenz und dann Spannung gesenkt (automatisch!) Bei Frequenzanhebung wird zuerst Spannung und dann Frequenz angebhoben

20 Spannungs-/Frequenzvariation
[Atmel 1280 mit 8MHz] 1 MHz weniger ~ 1-1,5 mA, 1V weniger ~20-30% weniger mA Taktsabsenkung nahezu mit konstanter Verbrauchssenkung Spannungsabsenkung mit prozentueller Verbrauchssenkung Spannungsabsenkung senkt Spannung und Strom (P=U*I !)

21 Clock Gating / Power Gating
Clock Gating: Abschaltung einzelner Hardware-Komponenten auf einem Chip mittels Deaktivierung des Clocks der Komponente Beispiele: Speed Step, Power Now!, Turbo Boost/Core, Speed Shift Power Gating: Deaktivierung der Hardware durch Abschaltung der Versorgungsspannung des Blockes Langsamer/weniger dynamisch als Clock Gating Beispiele: Komponenten an µC wie Timer, ADC, UART,… Deaktivierung einzelner Kerne (Big.Little, Companion Core) Beide Methoden trennen nicht physikalisch!

22 Power Gating Big.Little: Nur einer der Cluster ist jeweils sichtbar
und wird virtuell als einziger Cluster angezeigt Interrupts warden ebenfalls auf diese Art geteilt (GIC, nicht abgebildet) Für die Software sind die Cluster mittels OPP erreichbar Tegra 3

23 Verbrauch einzelner Komponenten

24 Verbrauch einzelner Komponenten

25 Verbrauch einzelner Komponenten

26 Verbrauch einzelner Komponenten

27 Compiler Verwendung von Optimierungen
Laufzeit optimieren (bei gcc –O2) – Hauptziel der Compilerentwickler Verwendung spezieller Instruktionen (SSE, …) Einige Compiler können Spannungs-/Frequenzsteuerung in Programmen erzeugen

28 Programmierstil Code Effizienz – kleinerer Code = kürzere Ausführungszeit ”race to idle” Einbeziehung der HW: Spezialhardware wie Timer (bzw. Darauf aufbauende Systemroutinen), Hardwarebeschleunigung ABER: Beachtung Verbrauch Spezial-HW vs. Implementierung in SW (z.B. Kommunikation alá UART vs. bitbanging)

29 Programmierstil Lokale Variablen bzw. Globale Variablen
Lokale Variablen brauchen nicht initialisiert werden (bzw. im Speicher nicht angelegt warden) Pointer benutzen Anstatt zusätzlich den Speicher zu kopieren bei Funktionsaufrufen Wird bei AMDs HSA in Zusammenspiel mit CPU/GPU genutzt Programmcode in den RAM  Speicherhierarchie beachten: Je weiter aussen, desto weniger Bits umdrehen

30 Wirkung der Software HW-Unterstützung weggerechnet bleibt nur die Laufzeit. Je kürzer das Programm läuft, desto kürzer ist bei gleichbleibendem Verbrauch die gesamt verbrauchte Energie. Speicheroptimierungen bringen dagegen nur bei großen Datenmengen, auf denen der Prozessor warten muss etwas, sind sonst nicht messbar.

31 Spannung oder Transistoren sparen?
Beispiel AMD Fury Karte (Anz. Shader) Leistung Takt(MHz) Verbrauch(Watt) Leistung/Watt Fury X (4096) 116 1050 275 0,42 Fury (3584) 105 1000 0,38 Fury Nano (4096) 100 ~860 175 0,57 Ist Parallelität möglich, mehr Einheiten statt mehr Takt verwenden “Sweet Spot” bei der Taktung beachten

32 Was reduziert statische/ was dynamische Verluste?
Spezielle Hardware IM Gegenteil JA Strukturbreite Schaltungsoptimierung Frequenzvariation NEIN Spannungsvariation Clock Gating Power Gating Compiler Nur bei HW-Nähe Programmierstil

33 Warum verwendet man diese Techniken dann nicht dauernd?
Spezielle HW zu entwickeln ist sehr teuer und bei zu komplexer Aufgaben nicht geeignet Strukturbreite finanziell nahe dem Ende Schaltungsoptimierung nur in kleinem Rahmen möglich und sehr teuer (vorgefertigte Libraries verwenden Standardzellen) Frequenz-/Spannungsvariationen und Gating(=“race to idle”) schließen sich gegenseitig aus

34 Referenzen/Bilder EU-Richtlinie: Verlustleistung: Bitcoin-Vergleich: Strukturbreite: P-State/Speed Shift: Atmel 1280 Datenblatt: DVFS: Big.Little-Konzept: Bilder Folie 5-Verlustleistung: Folie 11-Antminer: Folie 13-MOSFET: Folie 14-Strukturbreite: Folie 15/16-Finfet-Bilder: Folie 19-i.MX28: Folie 19-P-State/Speed Shift: Folie 20-Atmel Consumption: Folie 22-Big.Little: Folie 22-Companion Core:


Herunterladen ppt "Energieverbrauch & Verlustleistung"

Ähnliche Präsentationen


Google-Anzeigen