Software Engineering für moderne, parallele Plattformen
|
|
- Paula Steinmann
- vor 7 Jahren
- Abrufe
Transkript
1 Software Engineering für moderne, parallele Plattformen b. Ergänzungen zur Performanz Dr. Victor Pankratius Dr. Victor Pankratius IPD Lehrstuhl für Programmiersysteme-Tichy KIT die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe (TH)
2 Agenda Das Roofline Model [Williams and Patterson, The Roofline Model: A pedagogical tool for program analysis and optimization, CACM 5(), 009] [Folien: Williams, Patterson, The Roofline Model: A pedagogical tool for program analysis and optimization, ParLab Summer Retreat, 00] Unerwartete Einflussfaktoren bei der Performanzmessung [T. Mytkowicz et al., Producing Wrong Data Without Doing Anything Obviously Wrong!, ASPLOS, 009] Dr. Victor Pankratius
3 Das Roofline Model () Motivation Diversität der Multikernarchitekturen nimmt zu Nach welchen groben Richtlinien kann man die Performanz eines parallelen Programms verbessern? Vergleichbarkeit zwischen parallelen Plattformen Grobe Grenzen- und Flaschenhalsanalyse ( Bound and Bottleneck ) statt exakter Vorhersage 3 Dr. Victor Pankratius
4 Das Roofline Model () Angenommene limitierende Faktoren für Performanz Bandbreite Prozessor-Speicher Gemessen als FLOPS / Byte DRAM Datenverkehr Operationsintensität ( operational intensity ) bezieht sich nur auf Bytes, die nach Filtern durch Caches tatsächlich zum Hauptspeicher gelangen) Performanz für Gleitkommaberechnungen (floating point performance), gemessen in GFLOPs / sec Ermittlung der Werte: Spezifikationen, Mikro-Benchmarks Dr. Victor Pankratius
5 Das Roofline Model (3) Performanz nach oben beschränkt Erreichbare GFLOPS/sec = min ) Spitzenleistung für Gleitkommaberechnungen (Peak Floating Point Performance) ) Spitzenwert Speicherbandbreite * Operationsintensität (Peak Memory Bandwidth * Operational Intensity) Betrachtung der Größen: zu : GFLOPS / sec zu : GB/sec * FLOPS/Byte = GFLOPS / sec Also beide im selben Graphen darstellbar 5 Dr. Victor Pankratius
6 Das Roofline Model () Beispiel für AMD Opteron X Logarithmische Skalen! (a) 6 peak memory bandwidth (stream) peak floating-point performance / / / 6 Dr. Victor Pankratius
7 Das Roofline Model () Beispiel für AMD Opteron X 6 Durch Benchmark für die jeweilige parallele Plattform ermittelt; bleibt danach fix peak memory bandwidth (stream) Experimentell: Minimale Operationsintensität für maximale Performanz peak floating-point performance Beispiel für eine Anwendung, für deren Operationsintensität die Gleitkommaperformanz auf dieser Plattform zum Flaschenhals wird (a) / / / 7 Dr. Victor Pankratius
8 Das Roofline Model (5) Beispiel für AMD Opteron X und X 6 (b) Opteron X Opteron X / Allgemein: Knick weiter rechts: Nur Anwendungen mit höherer Operationsintensität können max. Gleikommaperformanz auf der jeweiligen Plattform erreichen. Knick weiter links: Potenziell mehrere Anwendungen können max. Gleikommaperformanz erzielen / / Dr. Victor Pankratius
9 Das Roofline Model (6) Weitere limitierende Faktoren Auf dem Weg zur Spitzenperformanz sind noch weitere Optimierungs- Hürden zu überwinden Werden für die jeweilige Maschine experimentell ermittelt und ins Modell übernommen Warum nützlich? Angenommen, ein Programm bleibt für seine Operationsintensität weit unter der erreichbaren Performanz Welche Maßnahmen soll man ergreifen? Modell zu Rate ziehen 9 Dr. Victor Pankratius
10 Das Roofline Model (7) Weitere limitierende Faktoren 6 peak memory bandwidth (stream) (a) Computational Ceilings Idee: Um nächste Decke zu erreichen, muss zunächst die untere durchbrochen werden. Abstand repräsentiert Verbesserung. peak floating-point performance. peak floating-point balance. ILP or SIMD TLP only / / 0 Dr. Victor Pankratius / /
11 Das Roofline Model (7) Weitere limitierende Faktoren 6 peak memory bandwidth (stream) (a) Computational Ceilings Einige Prozessoren haben gleiche Anzahl von Addierern und Multiplizierern, die gleichzeitig arbeiten können. Gleichmäßige Aufteilung der Berechungen kann weitere Beschleunigungen bringen peak floating-point performance. peak floating-point balance. ILP or SIMD TLP only / / Dr. Victor Pankratius / /
12 Das Roofline Model () Weitere limitierende Faktoren (b) Bandwidth Ceilings 6 / / Dr. Victor Pankratius peak memorybandwidth (stream) 5. software prefetching. memoryaffinity 3. unit strideaccess only peak floating-point performance / /
13 Das Roofline Model () Weitere limitierende Faktoren (b) Bandwidth Ceilings 6 / / peak memory bandwidth (stream) 5. software prefetching. memory affinity 3 Dr. Victor Pankratius 3. unit stride access only peak floating-point performance Schleifenrestrukturierungen können Hardware-Prefetching erleichtern / / Fäden und deren Daten sollten möglichst auf dem selben Kern bzw. Chip landen
14 Das Roofline Model (9) Konsequenzen für die Performanzoptimierung (c) Optimization Regions 6 / / Dr. Victor Pankratius peak memorybandwidth (stream) 5. software prefetching. memoryaffinity 3. unit stride access only Kernel peak floating-point performance. peak floating-point balance. ILP or SIMD TLP only Kernel / /
15 Das Roofline Model (9) Konsequenzen für die Performanzoptimierung 6 / / peak memory bandwidth (stream) 5. software prefetching. memory affinity 5 Dr. Victor Pankratius 3. unit stride access only (c) Optimization Regions Je nach Charakteristika einer bestimmten Anwendung können Gleitkommaoptimierungen, Bandbreitenoptimierungen oder beide Arten zur Verbesserung herangezogen werden. Kernel peak floating-point performance / /. peak floating-point balance. ILP or SIMD TLP only Kernel
16 Das Roofline Model (0) Beispiele für Anwendungen und Rechner Beispielanwendungen mit genügend Parallelisierungspotenzial SPMV (Sparse Matrix-Vector multiply) y=a*x geringe Operationsintensität LBMHD (Lattice-Boltzmann Magneto- Hydrodynamics) Simulationsanwendung große Datenmengen, wenig ILP Unausgeglichen: Viel mehr Additionen als Multiplikationen x = A x y Stencil Simulation für ein Problem der Größe 56³, in der beim Aktualisieren eines Punkts 7 Nachbarpunkte einbezogen werden Hohe Anforderungen an Lokalität 3D FFT Dr. Victor Pankratius
17 7 6 / / / / (a) Intel Xeon (Clovertown) 6 6 peak stream bandwidth peak stream bandwidth SpMV (b) Intel Xeon (Clovertown) snoop filter ineffective snoop filter ineffective peak DP +balanced mul/add +SIMD peak DP +SIMD / / / / peak stream bandwidth peak copy bandwidth (d) AMD Opteron X (Barcelona) without memory affinity +ILP TLP only +ILP +balanced mul/add TLP only peak DP +balanced mul/add +SIMD / / / / +ILP TLP only 6 6 peak stream bandwidth peak copy bandwidth (d) AMD Opteron X (Barcelona) without memory affinity SpMV peak DP +SIMD +ILP +balanced mul/add TLP only / / / / (e) IBM Cell (QS0) 6 peak stream bandwidth without NUMA / / / / peak stream bandwidth without NUMA SpMV (e) IBM Cell (QS0) peak DP +FMA +SIMD peak DP +SIMD / / / / +ILP TLP only +ILP +FMA TLP only
18 Das Roofline Model () Beispiele für Anwendungen und Rechner SUN T hat höchste Speicherbandbreite Knick daher weiter links Roofline model for Sun UltraSPARC T+ 6 peakmemorybandwidth withoutmemoryaffinity / / / / Dr. Victor Pankratius peak DP 50% issued == FP 5% issued == FP.5% issued == FP
19 Das Roofline Model (3) Beispiele für Anwendungen und Rechner Beschriebene Anwendungen waren nicht einfach auf Cell zu portieren Probleme: Schwierig SIMD auszunutzen, Compiler noch zu unreif Synergistic Processor Elements haben jeweils eigenen Adressraum Einfügen expliziter DMA Anweisungen wäre notwendig gewesen Roofline for transponse phase of 3D FFT for the Cell peak exchange rate Transponse peak stream bandwidth /6 / / / / / 9 Dr. Victor Pankratius Operational Intensity (Exchanges/Byte)
20 Weitere Beispiele [Quelle: Williams and Patterson; Folien ParLab Summer Retreat] Beobachtung: Die notwendigen Optimierungen können von Maschine zu Maschine verschieden sein Auto-Tuning notwendig! 0
21 Das Roofline Model (5) Anmerkungen Modell erfasst nicht alle möglichen Einflussfaktoren Kann für Multicore verwendet werden, ist aber nicht explizit nur auf Multicore ausgelegt Modell fokussiert auf Programme, die hauptsächlich Gleitkommaberechnungen durchführen Dr. Victor Pankratius
Universität Karlsruhe (TH)
Universität Karlsruhe (TH) Forschungsuniversität gegründet 5 Software Engineering für moderne, parallele Plattformen b. Ergänzungen zur Performanz Dr. Victor Pankratius Agenda Das Roofline Model [Williams
MehrBeispielvortrag: HPCG auf Intel Haswell-EP
Beispielvortrag: HPCG auf Intel Haswell-EP Johannes Hofmann 1 Seminarvortrag Architekturen von Multi- und Vielkern-Prozessoren Erlangen, 19.4.2016 1 Computer Architecture, University Erlangen-Nuremberg
MehrOpenMP am Beispiel der Matrizenmultiplikation
OpenMP am Beispiel der Matrizenmultiplikation David J. Meder, Dr. Victor Pankratius IPD Tichy Lehrstuhl für Programmiersysteme KIT die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe
MehrCell Broadband Engine
Cell Broadband Engine 21.March 2006 Benjamin Keck Outline Why Cell?!? Application Areas Architectural Overview SPU Programming Model Programming on the PPE C/C++ Intrinsics The Cell Supercomputer on a
MehrGeorg Hager Regionales Rechenzentrum Erlangen (RRZE)
Erfahrungen und Benchmarks mit Dual- -Prozessoren Georg Hager Regionales Rechenzentrum Erlangen (RRZE) ZKI AK Supercomputing Karlsruhe, 22./23.09.2005 Dual : Anbieter heute IBM Power4/Power5 (Power5 mit
Mehr2 Rechnerarchitekturen
2 Rechnerarchitekturen Rechnerarchitekturen Flynns Klassifikation Flynnsche Klassifikation (Flynn sche Taxonomie) 1966 entwickelt, einfaches Modell, bis heute genutzt Beschränkung der Beschreibung auf
MehrDOAG Konferenz 2007 in Nürnberg
DOAG Konferenz 2007 in Nürnberg Auswahl und Sizing: Die richtige Hardware (+Software) für Oracle Björn Bröhl Projektmanager Handlungsbevollmächtigter Seite 1 Inhalt Die Zielsetzung Vorgehensweise Auswahl
MehrRaytracing auf Desktop PCs Optimizing Cache Usage (Intel Corp.)
Raytracing auf Desktop PCs Optimizing Cache Usage (Intel Corp.) von Martin Stöcker Motivation Geschwindigkeit der Prozessoren verdoppelt sich alle 18 Monate (Moore s Law) Geschwindigkeit des Speichers
MehrOutline. Cell Broadband Engine. Application Areas. The Cell
Outline 21.March 2006 Benjamin Keck Why Cell?!? Application Areas Architectural Overview Programming Model Programming on the PPE C/C++ Intrinsics 1 2 The Cell Supercomputer on a chip Multi-Core Microprocessor
MehrEvaluation. Einleitung. Implementierung Integration. Zusammenfassung Ausblick
Christopher Schleiden Bachelor Kolloquium 15.09.2009 Einleitung Evaluation Implementierung Integration Zusammenfassung Ausblick Einleitung laperf Lineare Algebra Bibliothek für C++ Möglichkeit zur Integration
MehrKapitel 6: Dynamic Shortest Path
Kapitel 6: Dynamic Shortest Path 6.4 Experimentelle Analyse VO Algorithm Engineering Professor Dr. Petra Mutzel Lehrstuhl für Algorithm Engineering, LS11 18. VO 12. Juni 2007 Literatur für diese VO C.
MehrNeue Dual-CPU Server mit Intel Xeon Scalable Performance (Codename Purley/Skylake-SP)
Neue Dual-CPU Server mit Intel Xeon Scalable Performance (Codename Purley/Skylake-SP) @wefinet Werner Fischer, Thomas-Krenn.AG Webinar, 17. Oktober 2017 Intel Xeon Scalable Performance _ Das ist NEU: Neue
MehrRST-Labor WS06/07 GPGPU. General Purpose Computation On Graphics Processing Units. (Grafikkarten-Programmierung) Von: Marc Blunck
RST-Labor WS06/07 GPGPU General Purpose Computation On Graphics Processing Units (Grafikkarten-Programmierung) Von: Marc Blunck Ablauf Einführung GPGPU Die GPU GPU Architektur Die Programmierung Programme
MehrWissenschaftliches Rechnen in der Praxis: Hardware und Hardware-orientierte Programmierung
Wissenschaftliches Rechnen in der Praxis: Hardware und Hardware-orientierte Programmierung Dominik Göddeke dominik.goeddeke@math.tu-dortmund.de Vorlesung Wissenschaftliches Rechnen Fakultät für Mathematik
MehrCell Broadband Engine & CellSs: ein Programmiermodel für den Cell Prozessor
Cell Broadband Engine & CellSs: ein Programmiermodel für den Cell Prozessor Hardware-Software-Co-Design Universität Erlangen-Nürnberg mark.duchon@mb.stud.uni-erlangen.de Ziegler_Matthias@web.de andreas.fall@googlemail.com
MehrArchitektur paralleler Plattformen
Architektur paralleler Plattformen Freie Universität Berlin Fachbereich Informatik Wintersemester 2012/2013 Proseminar Parallele Programmierung Mirco Semper, Marco Gester Datum: 31.10.12 Inhalt I. Überblick
MehrIntel 80x86 symmetrische Multiprozessorsysteme. Eine Präsentation im Rahmen des Seminars Parallele Rechnerarchitekturen von Bernhard Witte
Intel 80x86 symmetrische Multiprozessorsysteme Eine Präsentation im Rahmen des Seminars Parallele Rechnerarchitekturen von Bernhard Witte Gliederung I. Parallel Computing Einführung II.SMP Grundlagen III.Speicherzugriff
MehrBereit für Multicore?
Bereit für Multicore? Prof. Dr. Walter F. Tichy IPD Tichy Lehrstuhl für Programmiersysteme KIT die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe (TH) AMD Opteron 12 cores ~1.8
MehrProseminar Rechnerarchitekturen. Parallelcomputer: Multiprozessorsysteme
wwwnet-texde Proseminar Rechnerarchitekturen Parallelcomputer: Multiprozessorsysteme Stefan Schumacher, , PGP Key http://wwwnet-texde/uni Id: mps-folientex,v
MehrMulticore-Architekturen
Universität Erlangen- Nürnberg Technische Universität München Universität Stuttgart Multicore-Architekturen Vortrag im Rahmen der Ferienakademie 2009 Kurs 1: Programmierkonzepte für Multi-Core Rechner
MehrDie Sandy-Bridge Architektur
Fakultät Informatik - Institut für Technische Informatik - Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Die Sandy-Bridge Architektur René Arnold Dresden, 12. Juli 2011 0. Gliederung 1.
MehrIntel Cluster Studio. Michael Burger FG Scientific Computing TU Darmstadt michael.burger@sc.tu-darmstadt.de
Intel Cluster Studio Michael Burger FG Scientific Computing TU Darmstadt michael.burger@sc.tu-darmstadt.de 19.03.13 FB Computer Science Scientific Computing Michael Burger 1 / 30 Agenda Was ist das Intel
MehrXeon, Opteron, UltraSPARC höher, schneller, weiter?
Xeon, Opteron, UltraSPARC höher, schneller, weiter? best OpenSystems Day Spring 2006 Trends im CPU- und Systemdesign Unterföhring Wolfgang Stief stief@best.de Senior Systemingenieur best Systeme GmbH GUUG
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie
MehrKingston Technology WHD. November 30, 2012. Andreas Scholz, BDM Integration und Server D-A
Kingston Technology WHD Andreas Scholz, BDM Integration und Server D-A November 30, 2012 Agenda Trends Speicher Konfigurationen Warum KingstonConsult? KingstonConsult Speicher Bandbreite: balanced vs.
MehrOpteron und I/O. Toni Schmidbauer. 11. Mai Zusammenfassung. Eine kurze Beschreibung der AMD Opteron Architektur.
Opteron und I/O Toni Schmidbauer 11. Mai 2005 Zusammenfassung Eine kurze Beschreibung der AMD Opteron Architektur Inhaltsverzeichnis 1 Allgemeines 2 2 Was ist ein Interconnect? 2 3 Traditionelles PC Chipset
MehrIn heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher
Speicherhierarchie In heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher Register Speicherzellen, direkt mit der Recheneinheit verbunden Cache-Speicher Puffer-Speicher
MehrUniversität Karlsruhe (TH)
Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 ZPL Prof. Dr. Walter F. Tichy Dr. Victor Pankratius Ali Jannesari Agenda 1. ZPL Überblick 2. Konzepte von ZPL Regionen, Region Specifiers
MehrKapitel 4 Grundlagen zur Parallelverarbeitung
Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Kapitel 4 Grundlagen zur Parallelverarbeitung SWT I Sommersemester 2009 Prof. Dr. Walter F. Tichy Dipl.-Inform. David J. Meder Warum Parallelverarbeitung?
MehrKapitel 12: Schnelles Bestimmen der Frequent Itemsets
Einleitung In welchen Situationen ist Apriori teuer, und warum? Kapitel 12: Schnelles Bestimmen der Frequent Itemsets Data Warehousing und Mining 1 Data Warehousing und Mining 2 Schnelles Identifizieren
MehrGrundlagen der Rechnerarchitektur. Ein und Ausgabe
Grundlagen der Rechnerarchitektur Ein und Ausgabe Übersicht Grundbegriffe Hard Disks und Flash RAM Zugriff auf IO Geräte RAID Systeme SS 2012 Grundlagen der Rechnerarchitektur Ein und Ausgabe 2 Grundbegriffe
MehrEntwurf eines FPGA-Cores zur Simulationsbeschleunigung zeitkontinuierlicher Modelle im HiL Kontext
Entwurf eines FPGA-Cores zur Simulationsbeschleunigung zeitkontinuierlicher Modelle im HiL Kontext Till Fischer 03.11.2011 FZI Forschungszentrum Informatik Embedded Systems & Sensors Engineering (ESS)
MehrEin kleiner Einblick in die Welt der Supercomputer. Christian Krohn 07.12.2010 1
Ein kleiner Einblick in die Welt der Supercomputer Christian Krohn 07.12.2010 1 Vorschub: FLOPS Entwicklung der Supercomputer Funktionsweisen von Supercomputern Zukunftsvisionen 2 Ein Top10 Supercomputer
MehrKapitel Grundlagen zur Parallelverarbeitung
Kapitel 4.2 - Grundlagen zur Parallelverarbeitung SWT I Sommersemester 2010 Walter F. Tichy, Andreas Höfer, Korbinian Molitorisz IPD Tichy, Fakultät für Informatik KIT die Kooperation von Forschungszentrum
MehrSysteme 1: Architektur
slide 1 Vorlesung Systeme 1: Architektur Prof. Dr. Ulrich Ultes-Nitsche Forschungsgruppe Departement für Informatik Universität Freiburg slide 2 Prüfung 18. Februar 2004 8h00-11h40 13h00-18h20 20 Minuten
MehrSeminar Multicore-Programmierung
Multicore- und GPGPU-Architekturen Fakultät für Informatik und Mathematik Universität Passau 04. November 2010 APUs / 1 / 39 Inhaltsverzeichnis I APUs / APUs / 2 / 39 Inhaltsverzeichnis II APUs / 3 / 39
MehrLEISTUNGSVERGLEICH VON FPGA, GPU UND CPU FÜR ALGORITHMEN ZUR BILDBEARBEITUNG PROSEMINAR INF-B-610
LEISTUNGSVERGLEICH VON FPGA, GPU UND CPU FÜR ALGORITHMEN ZUR BILDBEARBEITUNG PROSEMINAR INF-B-610 Dominik Weinrich dominik.weinrich@tu-dresden.de Dresden, 30.11.2017 Gliederung Motivation Aufbau und Hardware
MehrBeispiele von Branch Delay Slot Schedules
Beispiele von Branch Delay Slot Schedules Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Prozessor 97 Weniger
MehrTechnische Grundlagen der Informatik 2 SS Einleitung. R. Hoffmann FG Rechnerarchitektur Technische Universität Darmstadt E-1
E-1 Technische Grundlagen der Informatik 2 SS 2009 Einleitung R. Hoffmann FG Rechnerarchitektur Technische Universität Darmstadt Lernziel E-2 Verstehen lernen, wie ein Rechner auf der Mikroarchitektur-Ebene
MehrOpenCL. Programmiersprachen im Multicore-Zeitalter. Tim Wiersdörfer
OpenCL Programmiersprachen im Multicore-Zeitalter Tim Wiersdörfer Inhaltsverzeichnis 1. Was ist OpenCL 2. Entwicklung von OpenCL 3. OpenCL Modelle 1. Plattform-Modell 2. Ausführungs-Modell 3. Speicher-Modell
MehrKapitel 7.3 Zugreifbarkeit
Kapitel 7.3 Zugreifbarkeit Korbinian Molitorisz IPD Tichy Lehrstuhl für Programmiersysteme KIT die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe (TH) Zugreifbarkeit (Accessibility)
MehrCPU-Update. Von Äpfeln und Birnen. best OpenSystems Day Herbst Dornach. Wolfgang Stief
CPU-Update Von Äpfeln und Birnen best OpenSystems Day Herbst 2008 Dornach Wolfgang Stief stief@best.de Senior Systemingenieur best Systeme GmbH GUUG Board Member Motivation Earlier, we used 10 elements
MehrMulticore Architektur vs. Amdahl`s Gesetz
Fakultätsname Informatik, Professur Technische Informatik Multicore Architektur vs. Amdahl`s Gesetz Dresden, 21.Juli.2010 Motivation Veröffentlichung von IEEE Computer 2008 von Mark D. Hill (University
MehrQuiz. Gegeben sei ein 16KB Cache mit 32 Byte Blockgröße. Wie verteilen sich die Bits einer 32 Bit Adresse auf: Tag Index Byte Offset.
Quiz Gegeben sei ein 16KB Cache mit 32 Byte Blockgröße. Wie verteilen sich die Bits einer 32 Bit Adresse auf: Tag Index Byte Offset 32 Bit Adresse 31 3 29... 2 1 SS 212 Grundlagen der Rechnerarchitektur
MehrIntroduction Workshop 11th 12th November 2013
Introduction Workshop 11th 12th November 2013 Lecture I: Hardware and Applications Dr. Andreas Wolf Gruppenleiter Hochleistungsrechnen Hochschulrechenzentrum Overview Current and next System Hardware Sections
MehrMulticore Herausforderungen an das Software-Engineering. Prof. Dr.-Ing. Michael Uelschen Hochschule Osnabrück 15.09.2010
Multicore Herausforderungen an das Software-Engineering Prof. Dr.-Ing. Michael Uelschen Hochschule Osnabrück 15.09.2010 Inhalt _ Motivation _ Herausforderung 1: Hardware _ Herausforderung 2: Software-Partitionierung
MehrHochleistungsrechnen mit Windows Verifikations- und Analyseprogramme Christian Terboven Rechen- und Kommunikationszentrum RWTH Aachen
Hochleistungsrechnen mit Windows Verifikations- und Analyseprogramme hristian Terboven Rechen- und Kommunikationszentrum RWTH Aachen 1 Hochleistungsrechnen mit Windows enter omputing and ommunication Agenda
MehrMehrprozessorarchitekturen
Mehrprozessorarchitekturen (SMP, UMA/NUMA, Cluster) Arian Bär 12.07.2004 12.07.2004 Arian Bär 1 Gliederung 1. Einleitung 2. Symmetrische Multiprozessoren (SMP) Allgemeines Architektur 3. Speicherarchitekturen
MehrVirtualisierung im Echtzeitbereich. Andreas Hollmann FH Landshut EADS Military Air Systems
Virtualisierung im Echtzeitbereich Andreas Hollmann FH Landshut EADS Military Air Systems 2 Überblick Hintergrund und Motivation Vorstellung von Lösungsansätzen Auswahl und Evaluierung Einschränkungen
MehrDie Architektur des Sun UltraSPARC T2 Prozessors, Anwendungsszenarien
Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur, Prof. Spallek Die Architektur des Sun UltraSPARC T2 Prozessors, Anwendungsszenarien Tobias Berndt, to.berndt@t-online.de
MehrModProg 15-16, Vorl. 13
ModProg 15-16, Vorl. 13 Richard Grzibovski Jan. 27, 2016 1 / 35 Übersicht Übersicht 1 Supercomputing FLOPS, Peak FLOPS Parallelismus Praktische Aspekte 2 Klausur von 2009 2 / 35 Supercomputing: HPC Modellierung
MehrCompute Unified Device Architecture CUDA
Compute Unified Device Architecture 06. Februar 2012 1 / 13 Gliederung 2 / 13 : Compute Unified Device Architecture entwickelt von Nvidia Corporation spezifiziert Software- und Hardwareeigenschaften Ziel:
MehrVorlesung 5: MATRIX-DATENSTRUKTUREN UND SPARSE GEMM
Vorlesung 5: MATRIX-DATENSTRUKTUREN UND SPARSE GEMM 126 Hinweise! Mailinglisten: Vorlesung-GALA und NetworKit! Vorlesungs- und PÜ-Termine: Änderungen beachten!! Projektbeschreibungen abholen! 127 Wiederholung!
MehrGeneral Purpose Computation on GPUs
General Purpose Computation on GPUs Matthias Schneider, Robert Grimm Universität Erlangen-Nürnberg {matthias.schneider, robert.grimm}@informatik.stud.uni-erlangen.de M. Schneider, R. Grimm 1 Übersicht
Mehrmoderne Prozessoren Jan Krüger jkrueger@techfak.uni-bielefeld.de
moderne Prozessoren Jan Krüger jkrueger@techfak.uni-bielefeld.de Übersicht FachChinesisch SPARC - UltraSparc III/IV PowerPC - PowerPC 970(G5) X86 - Pentium4(Xeon), Itanium, (Pentium M) X86 - AthlonXP/MP,
MehrUniversität Karlsruhe (TH)
Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Software Engineering für moderne, parallele Plattformen Überblick Dr. Victor Pankratius Dr. Victor Pankratius, Prof. Walter F. Tichy, Dipl.-Inform.
MehrGames with Cellular Automata auf Parallelen Rechnerarchitekturen
Bachelor Games with Cellular Automata auf Parallelen en ( ) Dipl.-Inf. Marc Reichenbach Prof. Dietmar Fey Ziel des s Paralleles Rechnen Keine akademische Nische mehr Vielmehr Allgemeingut für den Beruf
MehrGleitkommaarithmetik. Erhöhen der Genauigkeit. Grundlagen der Rechnerarchitektur Logik und Arithmetik 124
Gleitkommaarithmetik Erhöhen der Genauigkeit Grundlagen der Rechnerarchitektur Logik und Arithmetik 124 Guard Bit, Round Bit und Sticky Bit Bei der Darstellung der Addition und Multiplikation haben wir
MehrTU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 07 Übung zur Vorlesung Einsatz und Realisierung von Datenbanksystemen im SoSe16 Moritz Kaufmann
MehrWeitere Verbesserungen
Weitere Verbesserungen Welcher Cache liefert aktuellen Block falls mehrere Caches Block im Zustand S halten? Lösung: Einführung eines weiteren Zustands O (Owner) Zustand O besagt: Eigentümer des Blocks
MehrCPU-Caches. Christian Duße. Seminar Effiziente Programmierung in C
CPU-Caches Christian Duße Seminar Effiziente Programmierung in C Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität
Mehr2 Homogene und Heterogene Multi-/Vielkernprozessoren
2 Homogene und Heterogene Multi-/Vielkernprozessoren 2.1 Motivation Multikern-Architekturen 2.2 Analyse von Multikern-Prozessoren Energieaspekte Bandbreitenmessung Roofline-Modell 2.3 Beispiele Multi-Core-Architekturen
MehrWichtige Rechnerarchitekturen
Wichtige Rechnerarchitekturen Teil 2 IBM 360 1 IBM 360 Angekündigt im April 1964, weil alle Aspekte der maschinellen Datenverarbeitung (general purpose computer) zusammengefasst werden sollten: 360 Grad
MehrZwischenklausur Informatik, WS 2016/17. Lösungen zu den Aufgaben
Zwischenklausur Informatik, WS 206/7 4.2.206 Lösungen zu den Aufgaben. Gegeben sind folgende Dualzahlen in Zweierkomplementdarstellung. Geben Sie den jeweils zugehörigen Dezimalwert an! a) entspricht der
MehrParallelisierung auf MPSoC-Plattformen
Anwendungen 1 Parallelisierung auf MPSoC-Plattformen MINF 1, WiSe2011 Anwendungen 1 17.11.2011 Betreuer: Prof. Dr. Schwarz Übersicht 1. 2. 3. 4. 5. Einleitung Multiprozessor- Architekturen SMP im Linux
MehrIntel Xeon Phi. Praktikum Parallele Rechnerarchitekturen May 13,
Intel Xeon Phi Praktikum Parallele Rechnerarchtitekturen Praktikum Parallele Rechnerarchitekturen May 13, 2014 1 Overview Aufbau & Programmierung State-of-the-Art Manycore Chip HPC Tools Performance-Modellierung
MehrSeminar Parallele Rechnerarchitekturen SS04 \ SIMD Implementierung aktueller Prozessoren 2 (Dominik Tamm) \ Inhalt. Seite 1
\ Inhalt Seite 1 \ Inhalt SIMD Kurze Rekapitulation 3Dnow! (AMD) AltiVec (PowerPC) Quellen Seite 2 \ Wir erinnern uns: Nach Flynn s Taxonomie kann man jeden Computer In eine von vier Kategorien einteilen:
MehrAlgorithmik kontinuierlicher Systeme
Algorithmik kontinuierlicher Systeme Matrixstrukturen Feste Dimension von Matrizen und Vektoren Geometrische Anwendungen Matrix beschreibt meist Transformationen von Vektoren im 2D bzw. 3D d.h. Dimension
MehrSoftware Engineering für moderne, parallele Plattformen. 9. GPGPUs: Grafikkarten als Parallelrechner. Dr. Victor Pankratius
Software Engineering für moderne, parallele Plattformen 9. GPGPUs: Grafikkarten als Parallelrechner Dr. Victor Pankratius Dr. Victor Pankratius, Dipl.Inform. Frank Otto IPD Tichy Lehrstuhl für Programmiersysteme
MehrParallele Rechnerarchitekturen
Bachelor Parallele en Informatik 3 ( ) Prof. Dietmar Fey Ziel des s Paralleles Rechnen Keine akademische Nische mehr Vielmehr Allgemeingut für den Beruf des Informatikers Bedingt durch Multikern- (und
MehrKommunikationsmodelle
Kommunikationsmodelle Dr. Victor Pankratius David J. Meder IPD Tichy Lehrstuhl für Programmiersysteme KIT die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe (TH) Grundlegende
MehrEinführung in die Programmiersprache C
Einführung in die Programmiersprache C 6 Cache-freundliche Programmierung (1) Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Quadratische Matrizen Musterlösung
MehrMulti- und Many-Core
Multi- und Many-Core Benjamin Warnke Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität Hamburg 2016-12-15 Benjamin
MehrTechnische Informatik - Eine Einführung
Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Technische Informatik - Eine Einführung Rechnerarchitektur Aufgabe
MehrHyperthreads in Itanium - Prozessoren
Hyperthreads in Itanium - Prozessoren und wie OpenVMS damit umgeht Thilo Lauer Technical Consultant Account Support Center 2006 Hewlett-Packard Development Company, L.P. The information contained herein
MehrVorlesung: Virtualisierung und Rechenzentrumsinfrastrukturen. Lars Göbel & Christian Müller VL04: Einführung in die Virtualisierung
Vorlesung: Lars Göbel & Christian Müller VL04: Einführung in die Virtualisierung Themenüberblick Virtualisierung VL 02: Einführung in die Virtualisierung (heute) VL 06: VL 08: XaaS VL 09: PaaS + SaaS VL
MehrIT für Führungskräfte. Zentraleinheiten. 11.04.2002 Gruppe 2 - CPU 1
IT für Führungskräfte Zentraleinheiten 11.04.2002 Gruppe 2 - CPU 1 CPU DAS TEAM CPU heißt Central Processing Unit! Björn Heppner (Folien 1-4, 15-20, Rollenspielpräsentation 1-4) Harald Grabner (Folien
MehrMulticore-Architekturen
Einführung Parallelität Technologien / Architekturen Chips Seminar Multicore-Programmierung am Lehrstuhl für Programmierung 30. April 2009 1 / 30 Einführung Parallelität Technologien / Architekturen Chips
MehrCPU, GPU und FPGA. CPU, GPU und FPGA Maximilian Bandle, Bianca Forkel 21. November 2017
CPU, GPU und FPGA, Bianca Forkel 21. November 2017 CPU, GPU und FPGA Inhalt CPU: Central Processing Unit GPU: Graphical Processing Unit FPGA: Field Programmable Gate Array 2 CPU Central Processing Unit
MehrCPU-Update. Wie Äpfel zu Melonen werden. best OpenSystems Day April 2010. Unterföhring
CPU-Update Wie Äpfel zu Melonen werden best OpenSystems Day April 2010 Unterföhring Wolfgang Stief wolfgang.stief@best.de Senior Systemingenieur best Systeme GmbH GUUG Board Member Motivation Alles wird
MehrExascale Computing. = Exascale braucht Manycore-Hardware...und was für Software??? 46/58
Exascale Computing Die FLOP/s-Tabelle: Name Faktor erreicht heute Giga 10 9 1976 CPU-Kern Tera 10 12 1997 Graphikkarte (GPU) Peta 10 15 2009 Supercomputer Exa 10 18 2020(?) Der gegenwärtig schnellste Rechner
MehrZum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE
Zum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE 754 Standard festgelegt. Es stehen sogenannte einfach
MehrDie Mikroprogrammebene eines Rechners
Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl holen Befehl dekodieren Operanden holen etc.
MehrGregor Michalicek, Marcus Schüler. Multiprozessoren
Gregor Michalicek, Marcus Schüler Gregor Michalicek Marcus Schüler Gregor Michalicek, Marcus Schüler Vorteile gegenüber Singleprozessoren ¾ sind zuverlässiger. Einige Multiprozessorsysteme können trotz
MehrNeues vom STRIP Forth-Prozessor
Neues vom STRIP Forth-Prozessor Tagung der Forth-Gesellschaft März 2014 Bad Vöslau/Österreich Willi Stricker -Prozessor Inhalt 1. STRIP-Befehlssatz Bisher: minimaler Befehlssatz neu: erweiterter Befehlssatz
MehrSeminarvortrag: Direktivenbasierte Programmierung von Beschleunigern mit OpenMP 4.5 und OpenACC 2.5 im Vergleich
Seminarvortrag: Direktivenbasierte Programmierung von Beschleunigern mit Direktivenbasierte Programmierung von Beschleunigern mit Agenda Einführung / Motivation Überblick zu OpenMP und OpenACC Asynchronität
MehrSoftware Engineering für moderne parallele Plattformen 9. GPGPUs: Grafikkarten als Parallelrechner
Software Engineering für moderne parallele Plattformen 9. GPGPUs: Grafikkarten als Parallelrechner Dipl.-Inform. Korbinian Molitorisz M. Sc. Luis Manuel Carril Rodriguez KIT Universität des Landes Baden-Württemberg
MehrCache Blöcke und Offsets
Cache Blöcke und Offsets Ein Cache Eintrag speichert in der Regel gleich mehrere im Speicher aufeinander folgende Bytes. Grund: räumliche Lokalität wird wie folgt besser ausgenutzt: Bei Cache Miss gleich
MehrMensch Technisch. Fallstudien
Zusammenfassung Überblick Mensch Technisch h h titativ iv Quan Qualitat Kontrollierte Experimente mit Probanden Fragebög en Interview Fallstudien Zeitreihen analysen Perform ance Beweise Think Aloud Protokolle
MehrPhysikalische Berechnungen mit General Purpose Graphics Processing Units (GPGPUs)
Fakultätsname XYZ Fachrichtung XYZ Institutsname XYZ, Professur XYZ Physikalische Berechnungen mit General Purpose Graphics Processing Units (GPGPUs) im Rahmen des Proseminars Technische Informatik Juni
MehrTheorie und Einsatz von Verbindungseinrichtungen in parallelen Rechnersystemen
Center for Information Services and High Performance Computing (ZIH) Theorie und Einsatz von Verbindungseinrichtungen in parallelen Rechnersystemen Hochgeschwindigkeitskommunikationen 13. Juli 2012 Andy
MehrCPU-Update. best OpenSystems Day Herbst 2007. Unterföhring. Wolfgang Stief. wolfgang.stief@best.de
CPU-Update best OpenSystems Day Herbst 2007 Unterföhring Wolfgang Stief wolfgang.stief@best.de Senior Systemingenieur best Systeme GmbH GUUG Board Member Agenda Trends vor einem Jahr? Wie gut war die Kristallkugel?
MehrCurrent and Emerging Architectures Multi-core Architectures and Programming
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 Inhalt Überblick über
Mehré Er ist software-transparent, d.h. der Benutzer braucht nichts von seiner Existenz zu wissen. Adreßbus Cache- Control Datenbus
4.2 Caches é Cache kommt aus dem Französischen: cacher (verstecken). é Er kann durch ein Anwendungsprogramm nicht explizit adressiert werden. é Er ist software-transparent, d.h. der Benutzer braucht nichts
MehrNeue Prozessor-Architekturen für Desktop-PC
Neue Prozessor-Architekturen für Desktop-PC Bernd Däne Technische Universität Ilmenau Fakultät I/A - Institut TTI Postfach 100565, D-98684 Ilmenau Tel. 0-3677-69-1433 bdaene@theoinf.tu-ilmenau.de http://www.theoinf.tu-ilmenau.de/ra1/
MehrTutorium Softwaretechnik I
Tutorium Softwaretechnik I Moritz Klammler 11. Juli 2017 Fakultät für Informatik, IPD Tichy Titelfoto: Copyright (C) 2010 Multimotyl CC BY-SA 3.0 1 11. Juli 2017 Moritz Klammler - Tutorium Softwaretechnik
MehrWichtige Rechnerarchitekturen
Wichtige Rechnerarchitekturen Teil 3 Control Data Corporation CDC 6600 1 CDC 6600 Fertigstellung 1964, Betrieb bis weit in die achtziger Jahre Hauptentwickler: Seymour Cray, Entwickler-Team aus nur 34
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Einführung Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2 Vorlesungsinhalte Binäre Arithmetik MIPS Assembler
Mehr