PerfOpt

Methoden und Werkzeuge zur Performanceanalyse und Optimierung

Kompetenzfeld Fahrzeugmechatronik
Prof. Dr. rer. nat. Christian Facchi
Dipl.-Ing. (FH) Peter Trapp

Telefon: (0841) 9348-365
christian.facchi@_we_dont_like_spam_haw-ingolstadt.de

Problemstellung:

„Zeit ist Geld" trifft auch auf die heutigen leistungsfähigen Netzwerke zu: Echtzeit- und Performance-Anforderungen nehmen bei Software-Systemen in der Telekommunikation einen immer höheren Stellenwert ein. Insbesondere bei den vielfach verwendeten verteilten Systemen und Steuerungen ist die Einhaltung von Laufzeitbedingungen essentiell. Eine Verletzung dieser stellt die Funktionsfähigkeit der Software und somit deren Verwendbarkeit in Frage. Eine nachträgliche Verbesserung der Laufzeiteigenschaften von SW ist meist sehr aufwändig, deshalb sind Optimierungen frühzeitig und zielgerichtet vorzunehmen.In diesem Zusammenhang ergeben sich unter anderem folgende Fragen:

  • Wie können bereits während der Entstehungszeit der Software die bisherigen Laufzeitabschätzungen verifiziert werden?

  • Welche Messmethoden und Messwerkzeuge können bei der SW-Entwicklung zur Beurteilung der Laufzeitabschätzung eingesetzt werden?

  • Wie kann eine Verfälschung der Messergebnisse durch den Einsatz der Messwerkzeuge minimiert werden?

  • Wie können Messergebnisse, die bei größeren Einheiten ermittelt wurden, auf kleinere Module aufgeteilt werden (Dekomposition)?

  • Wie können Programmteile mit erhöhtem Optimierungspotenzial identifiziert werden?

  • Wie kann eine realistische Kosten/Nutzen-Analyse der möglichen Optimierungskandidaten erstellt werden?

Zielsetzung:

Die frühzeitige Erkennung von Performance-Engpässen mit konkreten Lösungvorschlägen.

Durchführung:

  • Entwicklung/Portierung von implementierungsbegleitenden Werkzeugen zur Performance-Analyse

  • Entwicklung einer implementierungsbegleitenden Messmethodik

  • Identifikation von Optimierungspotenzialen

  • Validierung der Messergebnisse, Messmethodik und Optimierungsvorschläge

  • Untersuchung weiterer Optimierungsstrategien

Bisherige Ergebnisse

Dynamic Performance Stubs” stellen ein Framework für die Simulation von Performance-Verhalten von Software-Funktionen oder –Modulen zur Verfügung. Sie können für eine Kosten-Nutzen Analyse von möglichen Performance Optimierungen und somit für eine zielgerichtete Optimierung eingesetzt werden. Weiterhin ist es möglich, versteckte Flaschenhälse und die wichtigsten Optimierungskandidaten zu identifizieren.

Aktueller Stand

Die Performance vieler heutiger Systeme steht in direktem Zusammenhang mit der CPU. Wohingegen die Rechenleistung stetig zunimmt, herrscht, besonders in eingebetteten Systemen, enormer Kostendruck. Hierbei müssen Software-Optimierungen mit möglichst geringem Aufwand durchgeführt werden. Dies kann mittels der kürzlich definierten „CPU Stubs“, welche auf den „Dynamic Performance Stubs Framework“ basieren, erreicht werden.

Veröffentlichungen:

  • Markus Meyer, Helge Janicke, Peter Trapp, Christian Facchi, and MarcelBusch. Performance simulation of a system’s parallelization. In ICSEA ’11: Proceedings of the International Conference on Software Engineering Advances. Xpert Publishing Services, 2011 (bibtex , pdf)

  • Peter Trapp. Performance Improvements Using Dynamic Performance Stubs. PhD thesis, De Montfort University, 2011 (bibtex , pdf)

  • Peter Trapp, Markus Meyer, Christian Facchi, Helge Janicke, and FrancoisSiewe. Building cpu stubs to optimize cpu bound systems: An application of dynamic performance stubs. International Journal on Advances in Software,4 (1&2):189–206, 2011 (bibtex , pdf)

  • Peter Trapp, Markus Meyer, and Christian Facchi. Dynamic performance stubs to simulate the main memory behavior of applications. In SPECTS ’11: Proceedings of the International Symposium on Performance Evaluation of Computer and Telecommunication Systems. IEEE Communications Society, 2011 (bibtex)

  • Christian Facchi, Peter Trapp, and Jochen Wessel. Metrics and scrum in real life - enemies or friends? In SMEF ’11: Software Measurement Europe Forum, Rome, Italy, 2011 (bibtex)

  • Peter Trapp, Markus Meyer, and Christian Facchi. How to correctly simulate memory allocation behavior of applications by calibrating main memory stubs. Technical Report 20, Hochschule Ingolstadt, May 2011 (bibtex , pdf)

  • P. Trapp, M. Meyer, C. Facchi. Using CPU Stubs to Optimize Parallel Processing Tasks: An Application of Dynamic Performance Stubs. In ICSEA ’10: Proceedings of the International Conference on Software Engineering Advances. IEEE Computer Society, 2010 (Best Paper Award) (bibtex)

  • P. Trapp, C. Facchi. Main Memory Stubs to Simulate Heap and Stack Memory Behavior. In Computer Measurement Group 2010: International Conference Proceedings. Computer Measurement Group, Orlando (FL), 2010 (bibtex, pdf)

  • C. Facchi, P. Trapp, J. Wessel. Enhancing Continuous Integration by Metrics and Performance Criteria in a SCRUM Based Process - Metrics and SCRUM in an Industrial Environment: A Contradiction?. In EPIC 2010 (Workshop on Leveraging Empirical Research Results for Software Business Success). Bolzano, Italy, 2010

  • P.Trapp, C. Facchi, S. Bittl. The Concept of Memory Stubs as a Specialization of Dynamic Performance Stubs to Simulate Memory Access Behavior. In "Computer Measurement Group Conference 2009", Dallas/USA, Dezember 2009 (bibtex, pdf)
  • P. Trapp. C. Facchi, M. Meyer. Echtzeitverhalten durch die Verwendung von CPU Stubs: Eine Erweiterung von Dynamic Performance Stubs. Konferenz "Echtzeit 2009 - Software-intensive verteilte Echtzeitsysteme", Boppard am Rhein, November 2009 (bibtexExtended Abstract)

  • P. Trapp, C. Facchi. How to Handle CPU Bound Systems: A Specialization of Dynamic Performance Stubs to CPU Stubs. In "Computer Measurement Group Conference 2008", Las Vegas/USA, Dezember 2008 (bibtexpdf)

  • P. Trapp. Perfomance Improvement Using Dynamic Performance Stubs. Heft Nr. 14 aus der Reihe "Arbeitsberichte - Working Papers" ISSN 1612-6483, August 2007(bibtexpdf)

Kooperationspartner

Diplomarbeiten

  • Markus Reigl 2006 (german):

    Visualization and Analysis of Performance Measurement Results of an UMTS Component Using the Linux Trace Toolkit

  • Michael Obster 2007 (german):

    Analysis and Porting of a Tracingtool on the Realtime Linux “Montavista Linux”

  • Sebastian Bittl 2009 (english):

    Methods for the Simulation of the Memory Access Behaviour of Applications

  • Markus Meyer 2009 (german):

    Validierung und Ausbau der Vorgehensweisen bei der Performance Optimierung mittels Dynamic Performance Stubs anhand von Fallstudien an der NSN LTE Telekommunikationssoftware. (working title)

Lehre

Studenten Projekte

  • 2006: UMTS Performance-Optimization - Automatic Analysis of Logfiles
  • 2007: How to Automate Consistency on Testcases when an Interface Change Happens
  • 2008: Dynamic Performance Stubs for Changing the Memory Behaviour
    • Software Stubbing for Performance Measurements
    • Analysis and Methodology for Trashing the Caching
    • Performancetrace Evaluation Tool
  • 2009: Dynamic Performance Stubs for Changing the Memory Behaviour
    • Software Stubbing for Performance Measurements - Part II
    • Simulation of the Memory Behavior of Applications
    • Simulation of the Instruction Fetch Behavior of Applications

Studenten Seminare

  • 2008: Memory Stubbing

Kontakt

Prof. Dr. rer. nat. Christian Facchi
Telefon: (0841) 9348-365
christian.facchi@_we_dont_like_spam_haw-ingolstadt.de

Dipl.-Ing.(FH) Peter Trapp
Telefon: (0841) 93 48-625

verwandte Themen

Kompetenzfeld
Fahrzeugmechatronik

Forschungsschwerpunkt
Kommunikation