iSYSTEM stellt „Sampling-based Profiling“ im winIDEA Software Analyzer vor
Statistische Analyse der CPU-Auslastung, OS-Task- und ISR-Lastverteilung und Überwachung von Datensignalen im zeitlichen Verlauf über einen Debug-Port.
Das Konzept von „Sampling-based Profiling“ in winIDEA.
iSYSTEM stellt eine neue Funktion seines IDE-, Debug- und Software-Trace-Tools winIDEA Analyzer vor: Das „Sampling-based Profiling“ ermöglicht es Entwicklern, auch bei Mikrocontrollern und Prozessoren mit begrenzten Trace-Möglichkeiten oder Hardware-Trace-Ressourcen Timing-Analysen über die Debug-Schnittstelle durchzuführen. Per Program Counter (PC) und Data Sampling können Entwickler zum Test ihrer Anwendung die CPU-Auslastung, die Lastverteilung und die Datensignale über die Zeit statistisch messen und überwachen. Die neue Funktion lässt sich ganz leicht für jede Art von Mikrocontroller oder Prozessor verwenden und vereinfacht die Softwareentwicklung und den Test speziell für Sicherheitsanwendungen in verschiedenen Bereichen wie Automotive, Medizintechnik und Industrieautomation.
Das Sampling-based Profiling ist eine Funktion des winIDEA Software Analyzers. Damit erhält der Entwickler Daten, indem er über die Debug-Schnittstelle bestimmte Stellen im Speicher oder den CPU-Programmzähler abtastet – und das vollkommen ohne Trace-Hardware. Darüber hinaus analysiert der Profiler die abgerufenen Daten und visualisiert die Ergebnisse.
iSYSTEM hat eine Unterstützung für zwei Hauptanwendungsfälle implementiert: PC-Sampling und Data-Sampling. Der iSYSTEM Profiler sammelt Daten zur Programmausführung und berechnet die CPU-Auslastung in Prozent für jede Funktion, um deren Last darzustellen. OS Running Task und ISR Load Profiling geben Einblicke in die OS-Task- und ISR-Lastverteilung. In beiden Fällen wiederholt der Entwickler den Samplingvorgang so lange, bis sich die Statistiken stabilisieren. Daraus ergibt sich ein sehr guter Hinweis auf die Lastsituation im System, und der Entwickler kann beurteilen, ob die Anwendung wie erwartet abläuft oder nicht. Die dritte Anwendung des Sampling-based Profilings – die in Wirklichkeit nicht mit der Timing-Analyse zusammenhängt und weniger praktikabel ist – besteht darin, eine Art Oszilloskop zur Überwachung von Datensignalen über die Zeit „zu bauen“.
Das Sampling-based Profiling ist kein Ersatz für echtes Hardware-Trace, da es nicht garantieren kann, dass alle relevanten Ereignisse erfasst werden. Es ist jedoch das perfekte Tool für statistische Analysen oder für das Sampling sich langsam ändernder Variablen in einem System und hilft Entwicklern dabei, ihren Testaufwand weiter zu optimieren.
Die drei Anwendungsfälle von Sampling-based Profiling.
„Manche nennen es ‚Poor Man's Profiler‘, aber nichtsdestotrotz ist Sampling-based Profiling eine äußerst hilfreiche statistische, auf Sampling basierende Analysemethode – und eine wertvolle Erweiterung des iSYSTEM Software Analyzers“, sagte Erol Simsek, CEO von iSYSTEM. „Selbst wenn der Prozessor keine Trace-Schnittstelle für die reine Timing- und Lastanalyse hat, ermöglicht diese neue Funktion unseren Kunden, sich schnell ein Bild vom Laufzeitverhalten ihrer Software zu machen.“
In einem Live-Webinar am 23. September 2021 gibt iSYSTEM eine umfassende Einführung in das Sampling-based Profiling mit dem iSYSTEM Software Analyzer. Eine Registrierung für das Webinar ist bereits möglich unter https://www.isystem.com/support/meet-us/cpu-load-measurement.html.
Weiterführende Links
- PC Sampling und Data Sampling: Profiler Sampling with iSYSTEM winIDEA
- Webinar (YouTube): Timing Analysis using the iSYSTEM Profiler
- Application Notes: Profiling
- Tutorial: Start Tracing with iSYSTEM Tools
Fordern Sie weitere Informationen an…