Folie 1 - Weblearn
Transcription
Folie 1 - Weblearn
Leistungsvergleich mobiler IntelIntel-Systeme single vs. dual core Frank Kuchta Markus Rüger Inhalt Motivation Ziel & Aufgabendefinition Hardware - Architektur Test-Umgebung Benchmarks Fazit Inhalt Motivation Ziel & Aufgabendefinition Hardware - Architektur Test-Umgebung Benchmarks Fazit Motivation P ro d u ktb e w e rb u n g „C o re D u o “ „D ie d o p p e lte P ro ze sso rle istu n g fü r m e h r M u ltita skin g “ „E in e m e h r a ls d o p p e lt so h o h e G e sa m tle istu n g fü r S p ie le und G ra fika n w e n d u n g e n “ Zitat Intel http://www.intel.com/personal/computing/emea/deu/centrinositelet/index.htm?pin=Intel: Was steckt wirklich dahinter? Wie hoch sind der Leistungsgewinn und der praktische Nutzen wirklich? Inhalt Motivation Ziel & Aufgabendefinition Hardware - Architektur Test-Umgebung Benchmarks Fazit Ziel & Aufgabendefinition mobile Intel-Systeme Änderungen in der Architektur Pentium M / Core Duo / Core 2 Duo Leistungsvergleich Pentium M vs. Core Duo Kaufempfehlung Inhalt Motivation Ziel & Aufgabendefinition Hardware - Architektur Test-Umgebung Benchmarks Fazit Hardware - Architektur P5 • Pentium® P6 • Pentium® Pro • Pentium® II/III Intel NetBurst® Banias • Pentium® 4 • Pentium® D • Xeon® • Pentium® M • Core Duo® Intel® Core™ • Core 2 Duo® Hardware – Architektur : Banias Pentium M bzw. Centrino basiert auf der P6 Architektur Micro Ops Fusion Advanced Branch Prediction SSE 2 div. Energiesparmaßnahmen L1-Data-Cache: 32 KByte L2-Cache: 1.024 KByte 400 MHz FSB Bildquelle: [Banias] Hardware – Architektur : Dothan Pentium M bzw. Centrino 90nm Fertigungstechnik bis zu 2 GHz Taktrate Enhanced Data Prefetcher L2-Cache: 2.048 KByte 533 MHz FSB Bildquelle: [Dothan] Hardware – Architektur : Yonah Core Duo basiert weitestgehend auf dem Dothan 65nm Fertigungstechnik; 2 Cores L1-Data-Cache: 2x32 KByte L2-Cache: 2.048 KByte Shared Cache SSE 3 667 MHz FSB Bildquelle: [Yonah] Hardware – Architektur : Merom Core 2 Duo Wide Dynamic Execution Micro-Op Fusion Macro-Op Fusion (IF-THEN-ELSE) Extended Stack Point Tracker Smart Memory Access load & store Operationen out-of-order L1-Data-Cache Prefetcher Hardware – Architektur : Merom Core 2 Duo Advanced Digital Media Boost drei 128 Bit SSE A L U ‘s Intelligent Power Capability EM64T VT-x Befehlssatz L1 Data-Cache: 2x32 KByte L2-Cache: 4.096 KByte Shared Cache Bildquelle: [Merom] Inhalt Motivation Ziel & Aufgabendefinition Hardware - Architektur Test-Umgebung Benchmarks Fazit Testumbegebung Hardware (1) Frank Kuchta vs. Markus Hanses Intel Pentium M 725 Intel Core Duo T2300 Number of cores 1 2 Code Name Dothan Yonah Technology 90 nm 65 nm Core Speed 1616.9 MHz 1651.1 MHz L1 Data cache 32 KBytes, 8-way set associative, 64-byte line size 2 x 32 KBytes, 8-way set associative, 64-byte line size L2 cache 2048 KBytes, 8-way set associative, 64-byte line size 2048 KBytes, 8-way set associative, 64-byte line size Instruction sets MMX, SSE, SSE2 MMX, SSE, SSE2, SSE3 Memory DDR - 1280 MBytes 168.4 MHz DDR2 - 2048 MBytes 264.2 MHz Windows Version Microsoft Windows XP Home Edition Service Pack 2 Microsoft Windows XP Home Edition Service Pack 2 Testumbegebung Hardware (1) Frank Kuchta vs. Markus Hanses Intel Pentium M 725 Intel Core Duo T2300 Number of cores 1 2 Code Name Dothan Yonah Technology 90 nm 65 nm Core Speed 1616.9 MHz 1651.1 MHz L1 Data cache 32 KBytes, 8-way set associative, 64-byte line size 2 x 32 KBytes, 8-way set associative, 64-byte line size L2 cache 2048 KBytes, 8-way set associative, 64-byte line size 2048 KBytes, 8-way set associative, 64-byte line size Instruction sets MMX, SSE, SSE2 MMX, SSE, SSE2, SSE3 Memory DDR - 1280 MBytes 168.4 MHz DDR2 - 2048 MBytes 264.2 MHz Windows Version Microsoft Windows XP Home Edition Service Pack 2 Microsoft Windows XP Home Edition Service Pack 2 Testumbegebung Hardware (2) Holger Wolf vs. Markus Rüger Intel Pentium M 770 Intel Core Duo T2500 Number of cores 1 2 Code Name Dothan Yonah Technology 90 nm 65 nm Core Speed 2131.5 MHz 1999.4 MHz L1 Data cache 32 KBytes, 8-way set associative, 64-byte line size 2 x 32 KBytes, 8-way set associative, 64-byte line size L2 cache 2048 KBytes, 8-way set associative, 64-byte line size 2048 KBytes, 8-way set associative, 64-byte line size Instruction sets MMX, SSE, SSE2 MMX, SSE, SSE2, SSE3 Memory DDR2 - 1024 MBytes 266.4 MHz DDR2 – 2048 MBytes 333.2 MHz Windows Version Microsoft Windows XP Professional Service Pack 2 Microsoft Windows XP Professional Service Pack 2 Testumbegebung Hardware (2) Holger Wolf vs. Markus Rüger Intel Pentium M 770 Intel Core Duo T2500 Number of cores 1 2 Code Name Dothan Yonah Technology 90 nm 65 nm Core Speed 2131.5 MHz 1999.4 MHz L1 Data cache 32 KBytes, 8-way set associative, 64-byte line size 2 x 32 KBytes, 8-way set associative, 64-byte line size L2 cache 2048 KBytes, 8-way set associative, 64-byte line size 2048 KBytes, 8-way set associative, 64-byte line size Instruction sets MMX, SSE, SSE2 MMX, SSE, SSE2, SSE3 Memory DDR2 - 1024 MBytes 266.4 MHz DDR2 – 2048 MBytes 333.2 MHz Windows Version Microsoft Windows XP Professional Service Pack 2 Microsoft Windows XP Professional Service Pack 2 Inhalt Motivation Ziel & Aufgabendefinition Hardware - Architektur Test-Umgebung Benchmarks Fazit Vorbetrachtung Benchmarktools oft wenig aussagekräftig c‘tAnwendertests Datei-Kompression Audio-Komprimierung Video-Encoding Grafik-Rendering eigene Benchmarks mögliche Schwachstellen lokalisieren Kompression Benchmark Tool: WinRar 3.61 Testfile: 42,4MB Video 1 Thread / 2 Threads / x Threads Option Gemessen: Dauer der Kompression WinRar 53 53 53 Single 1,6GHz 43 30 30 Dual 1,6 GHz 1 Thread 2 Thread x Thread 45 45 45 Single 2,1GHz 41 29 29 Dual 2,0 GHz 0 10 20 30 Zeit [s] 40 50 60 Kompression Benchmark Beschleunigungsfaktoren Audio-Mp3-Komprimierung Tool: LameMp3 V3.97 Testfile: 39,6 MB .Wav Datei Optimierung: MMX, SSE, SSE2 Gemessen: Dauer der Komprimierung auf der CPU Audio Komprimierung mit Lame Mp3 17 16 Single 1,6GHz Dual 1,6GHz Single 2,1GHz Dual 2,0GHz 13 14 0 2 4 6 8 10 Zeit [s] 12 14 16 18 Audio-Mp3-Komprimierung LameMp3 arbeitet mit 1 Thread. Keine Beschleunigung aufgrund von 2 Cores G e sch w in d ig ke it „n u r“ a b h ä n g ig vo m C P U Takt und RAM Video Komprimierung Tool: Virtual Dub V.1.7.0 build 25854/release Codec XviD-1.1.2 Windows Media Video 9 Testfile: 60 Sek. Video Gemessen: Dauer der Kodierung Video Komprimierung 38 34 Video XVID 30 30 Single 1,6GHz Dual 1,6GHz Single 2,1GHz Dual 2,0GHz 160 86 Video WMV 123 70 0 20 40 60 80 100 Zeit [s] 120 140 160 180 Video Komprimierung Beschleunigungsfaktoren: XviD XviD arbeitet mit 1 Thread. Keine Beschleunigung aufgrund von 2 Cores Beschleunigungsfaktoren: WMV9 Cinebench - Benchmark Tool: CINEBENCH 9.5 basiert auf CINEMA 4D Rendern von Grafiken in mehreren Threads Cinebench 86 Single 1,6GHz 80 Dual 1,6GHz 44 1 Tread 2 Treads 77 Single 2,1GHz 75 Dual 2,0GHz 41 0 10 20 30 40 50 Zeit [s] 60 70 80 90 100 Cinebench - Benchmark Beschleunigungsfaktoren Vorbetrachtung eigene Benchmarks in C# RSA Enc-/Decoding Synchroner Zugriffstest DualSlow C# bietet 2 Optimierungseinstellungen Ohne Optimierung Mit Optimierung (MXX,SEE,SEE2) SSE3 wird nicht unterstützt RSA Benchmark RSA Verschlüsselt mit Entschlüsselt durch http://www.weblearn.hs-bremen.de/risse/MAI/docs/puzzles.pdf RSA Benchmark p und q sind jeweils 128 bit lange Primzahlen p = 272841391209158082973553771691834107803 q = 204529522774722087416736679430142573943 e = 299959329779933941214908800093326386487 d = 52697171591031710974197215140234759556016669 833013983138526341286792399231215 n = 55804119537200356864262710503223737361364815 547930284919191499161941360777229 Text: Heath.pdf als Text-Datei (833kb) 1 Thread / 2 Thread Variante RSA Benchmark Implementierung in C# (ohne Optimierungen) Gemessen: Zeit fürs Verschlüsseln und Entschlüsseln des gesamten Textes RSA Benchmark 136 98 105 90 1T RSA Enc. 151 60 2T RSA Enc. 114 52 Single 1,6GHz Dual 1,6GHz Single 2,1GHz Dual 2,0GHz 258 208 202 1T RSA Dec. 175 278 117 2T RSA Dec. 213 98 0 50 100 150 Zeit [s] 200 250 300 RSA Benchmark Vergleich Single vs. Dual nicht sinnvoll Abhängigkeit vom Restsystem(RAM etc.) zu hoch RSA Benchmark Beschleunigungsfaktoren der Dual-Cores Frage? Dual-Core immer schneller als Single-Core ? 2 Threads möglich 1,5-2,0x schneller ? Synchroner Zugriffstest Gemeinsamer Zugriff auf die selbe Ressource Ressource wird beim Zugriff mit ein Semaphor gelockt EBS Vorlesung (2.Semester) z.B. Producer/Consumer Problem Implementiert in C# (ohne Optimierung) Synchroner Zugriffstest for (long i = 0; i < n; i++) { lock (block) { SharedMem *= 5; SharedMem = Math.Pow(SharedMem, 3); SharedMem /= 3; SharedMem = SharedMem % 99999; } } Sync Access Single 1,6GHz 9,83 Dual 1,6GHz 11,23 Single 2,1GHz 7,51 Dual 2,0GHz 9,53 0 2 4 6 Zeit [s] 8 10 12 Synchroner Zugriffstest ineffektiv durch Warteschleifen busy waiting zyklische Abfrage eine Variable Beschleunigungsfaktoren DualSlow Benchmark 2048 KBytes, 8-way set associative, 64-byte line size (Nachteil) des Dual-Core: Gemeinsamer Cache für beide Cores 1MB L2 Cache/Core Vorteil des Single-Core 2 MB L2 Cache DualSlow Benchmark int[,] Datenfeld1 = new int[Datengroesse, 16]; for (int i = 0; i < Datengroesse; i = i + 2) { Datenfeld1[i, 0] = Datenfeld1[i + 1, 0]; } DualSlow Benchmark int[,] Datenfeld1 = new int[Datengroesse, 16]; for (int i = 0; i < n; i++) { for (int j = 0; j < Datengroesse; j = i + 2) { Datenfeld1[j, 0] = Datenfeld1[j + 1, 0]; } } DualSlow Benchmark Implementierung in C# (ohne Optimierungen) Gemessen: Zeit für n=20.000 Schleifendurchläufe in Abhängigkeit der Datengröße DualSlow Benchmark DualSlow Benchmark DualSlow Benchmark DualSlow Benchmark DualSlow Benchmark G e sch w in d ig ke it ist a b h ä n g ig vo m „P la tz“ im Cache, bzw. Verdrängung. Inhalt Motivation Ziel & Aufgabendefinition Hardware - Architektur Test-Umgebung Benchmarks Fazit Kaufempfehlung Auszug von http://www.alternate.de Auszug von http://www.saturn.de Was bringt die Zukunft ? Erhöhung der Taktrate Ende erreicht Bitbreite der Recheneinheiten erhöhen nur bedingt geeignet dedizierte Aufgaben schneller machen SSE 10 ? Leistungsgewinn durch Verdoppelung der Kerne auf wieviele Threads ist eine Aufgabe aufteilbar ? wieviele Kerne passen in ein Notebook ? komplett neue Architektur Fragen? все во пр о сы ? om het even welke vragen? any questions? 任 何 问 题 ? delle domande? des questions ? alguma pergunta? Quellen [Banias] Grafik, online im www http://www.thg.ru/mobile/20040511/images/baniasdie.jpg , Abruf am 31.11.06 [Dothan] Grafik, online im www http://www.3dnews.ru/documents/12029/dothan_core.jpg , Abruf am 31.11.06 [Yonah] Grafik, online im www http://www.computerbase.de/artikel/hardware/prozessoren/2006/bericht_intels_core_ solo_core_duo/2/ , Abruf am 31.11.06 [Merom] Grafik, online im www http://www.khardware.de/artikel.php?s=c&artikel_id=5495&seite=5 , Abruf am 31.11.06 [Saturn] Screenshot aus dem Onlineshop von Saturn, online im www http://saturn.de , Abruf am 28.11.06 [Alternate] Screenshot aus dem Onlineshop von Alternate, online im www http://www.alternate.de , Abruf am 28.11.06