Profil-Erstellung für Natural-Anwendungen (Profiling)

#### Search Results

Search

# Profil-Erstellung für Natural-Anwendungen (Profiling)

Dieses Dokument enthält allgemeine Informationen über die Profil-Erstellung (Profiling) für Natural-Anwendungen.

- Einführung in die Profil-Erstellung (Profiling)

- Schnellstart für das Profiling

- Plattformspezifische Profil-Erstellung

- Werkzeuge zur Profil-Erstellung (Natural Profiling Tools)

- Natural Profiler-Auswertungen

## Einführung in die Profil-Erstellung (Profiling)

Ein Profiler ist ein Tool für die dynamische Analyse von Programmen. Es misst die Häufigkeit und Dauer von Statements und vereinfacht so die Optimierung von Programmen.

Der Natural-Profiler wird zur Erstellung von Profilen (Profiling) für Natural-Anwendungen verwendet. Er sammelt Profiling-Daten immer dann, wenn ein definiertes Natural-Ereignis eintritt, z.B. wenn ein Programm startet oder bevor eine Datenbank aufgerufen wird. Der Natural-Profiler visualisiert die aufgezeichneten Ereignisdaten als Ereignis-Trace und die Aufrufstruktur der ausgeführten Natural-Objekte als Programm-Trace. Die vom Natural-Profiler gelieferte Performance-Auswertung zeigt den Zeitverbrauch und die Trefferzahl der ausgeführten Objekte, Natural-Statements und Programmzeilen.

Sie können Natural Profiler-Ereignisdaten in der Ausgabe der Profiler Utility anzeigen oder die Daten im Text- oder Tabellenformat exportieren. Sie können Natural Profiler-Performance-Analysen in der Eclipse-basierten Entwicklungsumgebung NaturalONE oder mit der Natural Profiler Rich GUI-Schnittstelle (einer Natural for Ajax-Anwendung) visualisieren.

Eine Natural Profiler-Analyse dient als Grundlage für die Performance-Optimierung einer Natural-Anwendung. Der Natural Profiler verschafft Ihnen einen sehr schnellen Überblick über die zeitintensiven Teile einer Natural-Anwendung. Es sind keine Code-Änderungen erforderlich, und außerdem reichen Grundkenntnisse der Anwendung aus.

## Schnellstart für das Profiling

Dieser Abschnitt beschreibt kurz die Schritte, die für die Profil-Erstellung von Natural-Batch-Anwendungen und die Anzeige der Ergebnisse erforderlich sind. Die hier aufgeführten Anweisungen können als Richtlinie dienen, wenn Sie mit der Verwendung des Natural Profilers beginnen. Detaillierte Informationen zu den Schritten finden Sie im Rest dieses Kapitels.

Die Schritte hängen, wie in der folgenden Grafik dargestellt, von der Auswertung ab, die Sie für Ihre Anwendung durchführen möchten:

1. Überprüfen Sie, ob die Voraussetzungen erfüllt sind.

2. Fügen Sie im Natural Batch-Job die Profiler Utility-Funktionen `INIT`, `FILTER` und `START` hinzu, um die Ereignisdatenerfassung zu starten. Im folgenden Beispiel für z/OS wird das Natural-Programm `XPROF` in der Library `PRFDEMO` profiliert:

       //CMSYNIN  DD  *
       PROFILER
       FUNCTION=INIT                /* Initialize profiling
         RESOURCE-NAME='ResNam',REPLACE=YES  /* Resource name
         RESOURCE-LIB=RESLIB        /* Resource library
       FILTER=EVENT                 /* Set event filter
         EVENT=ALL                  /* All events
         STATEMENT=ON               /* Collect statements
       FUNCTION=START               /* Start data collection
       END-PROFILER                 /* End Profiler input
       LOGON PRFDEMO
       XPROF
       10000
       FIN

   Im obigen Beispiel werden die Profiler-Ereignisdaten in eine Ressourcendatei mit dem Namen `ResNam.nprf` in der Library `RESLIB` geschrieben. Siehe auch Profilierung initialisieren und Datensammlung starten und anhalten.

3. Öffnen Sie die NPRF-Ressource in NaturalONE, um die Hot-Spots und das Ereignis-Tracing zu sichten.

4. Starten Sie einen Natural-Batch-Job mit der `READ`-Funktion der Profiler Utility, um ein Ereignis-Tracing, ein Programm-Tracing und die Profiler-Statistiken zu drucken. Beispiel:

       FUNCTION=READ           /* Read Profiler data
         RESOURCE-LIB=RESLIB   /* Resource library
         RESOURCE-TYPE=NPRF    /* Use resource type NPRF
         EVENT=ON              /* Print event trace
         PROGRAM=ON            /* Print program trace
         STATISTICS=ON         /* Print statistics

   Siehe auch Lesefunktion (READ) der Profiler Utility. In diesem Abschnitt wird auch beschrieben, wie Sie eine Transaktionszusammenfassung generieren.

5. Konsolidieren (aggregieren) Sie die Ereignisdaten aus der Profiler Rich GUI-Schnittstelle oder starten Sie einen Natural-Batch-Job mit der Profiler Utility-Funktion `CONSOLIDATE`. Beispiel:

       FUNCTION=CONSOLIDATE    /* Consolidate Profiler data
         RESOURCE-LIB=RESLIB   /* Resource library
         REPLACE=YES           /* Replace resource

   Die konsolidierten Profiler-Ereignisdaten werden in die Ressource `ResNam.nprc` in der Library `RESLIB` geschrieben. Siehe Ereignisdaten konsolidieren.

6. Öffnen Sie die NPRC-Ressource in NaturalONE, um die Hot-Spots zu sichten.

7. Öffnen Sie die NPRC-Ressource mit der Profiler Rich GUI-Schnittstellenfunktion Data Evaluation oder Program Analysis, um die Profiler-Daten in einer grafischen, interaktiven Browser-Oberfläche zu visualisieren.

8. Starten Sie einen Natural-Batch-Job mit der Profiler Utility-Funktion `READ`, um eine Programmzusammenfassung, eine Zeilenzusammenfassung und die Profiler-Statistiken zu generieren. Beispiel:

       FUNCTION=READ           /* Read Profiler Data
         RESOURCE-LIB=RESLIB   /* Resource library
         RESOURCE-TYPE=NPRC    /* Use resource type NPRC
         PROGRAM=ON            /* Print program summary
         LINE=ON               /* Print line summary
         STATISTICS=ON         /* Print statistics

   Siehe auch Lesefunktion (READ) der Profiler Utility. In diesem Abschnitt wird auch beschrieben, wie Sie eine Transaktionszusammenfassung generieren.

Anmerkungen:

1. Wenn der Ressourcenname nicht explizit in der `READ`- oder `CONSOLIDATE`-Funktion der Profiler Utility angegeben wird, wird die zuletzt erstellte NPRF- oder NPRC-Ressource in der Library verwendet.
2. Wenn Sie vorhaben, ein Profil einer langlaufenden Batch-Anwendung zu erstellen, lesen Sie den Abschnitt Langlaufende Anwendungen profilieren. Er behandelt Strategien, wie die Anzahl der zu überwachenden Ereignisse minimiert werden kann.
3. Der NaturalONE Profiler und die Profiler Rich GUI-Schnittstelle werden in der NaturalONE-Dokumentation ausführlich beschrieben.

## Plattformspezifische Profil-Erstellung

Sie können den Natural-Profiler für die Profil-Erstellung von Natural-Anwendungen auf Linux-, Windows- und Großrechner-Plattformen verwenden. Wie die Profil-Erstellung erfolgt, hängt von der Plattform und dem verwendeten Verarbeitungsmodus der Anwendung ab:

#### Großrechner

- Interaktive Großrechner-Anwendungen werden mit dem NaturalONE Profiler oder der Natural Profiler Utility im Online-Modus profiliert.

- Interaktive Großrechner-Anwendungen, die remote über Natural Studio oder Natural RPC ausgeführt werden, werden mit der Natural Profiler Utility im Batch-Modus profiliert.

- Großrechner-Batch-Anwendungen werden mit der Natural Profiler-Utility im Batch-Modus profiliert.

#### Linux und Windows

- Interaktive Linux- und Windows-Anwendungen werden mit dem NaturalONE Profiler bzw. dem Natural Profiler for Linux bzw. Windows profiliert.

- Linux- und Windows-Batch-Anwendungen werden mit dem Natural Profiler für Linux bzw. Windows profiliert.

## Werkzeuge zur Profil-Erstellung (Natural Profiling Tools)

In diesem Abschnitt werden die wichtigsten Funktionen der Natural Profiling Tools zusammengefasst:

- Funktionsumfang des NaturalONE Profiler

- Funktionsumfang des Natural Profiler für Linux und Windows

- Funktionsumfang der Profiler Utility

- Funktionsumfang des Natural Profiler Rich GUI-Schnittstelle

### Funktionsumfang des NaturalONE Profiler

- Erstellt Profile für interaktive Natural-Anwendungen auf Linux-, Windows- oder Mainframe-Plattformen in einer Eclipse-basierten Entwicklungsumgebung.

- Liest und analysiert Profiler-Ressourcendateien mit Ereignisdaten, die von der Großrechner-Profiler Utility im Batch-Modus oder vom Natural Profiler für Linux und Windows gesammelt wurden.

- Bietet Funktionen für die Verarbeitung großer Datenmengen:

  - Ereignisfilter,

  - Stichprobentechnik,

  - Datenkonsolidierung.

- Performance-Analysen von Programmen, Statements und Programmzeilen:

  - CPU-Zeit,

  - verstrichene (elapsed) Zeit,

  - Trefferquote.

- Zeigt ein Ereignis-Trace an.

- Gestattet die direkte Navigation von einer profilierten Programmzeile zum entsprechenden Quellcode.

- Speichert die Profiler-Daten als XML-formatierte Datei und lädt die Daten wieder zurück.

### Funktionsumfang des Natural Profiler für Linux und Windows

- Erstellt Profile für interaktive oder Natural-Batch-Anwendungen von einer Linux- oder Windows-Plattform aus.

- Bietet Funktionen für die Verarbeitung großer Datenmengen:

  - Ereignisfilter,

  - Stichprobentechnik,

  - Datenkonsolidierung.

- Speichert die Profiler-Daten als Profiler-Ressourcendatei.

### Funktionsumfang der Profiler Utility

> Online-Modus (Großrechner)

>   - Erstellt Profile für interaktive Natural-Anwendungen auf Großrechner-Plattformen.

>   - Bietet einen Ereignisfilter.

>   - Zeigt ein Ereignis-Trace an.

>   - Speichert die Profiler-Daten in einem Tabellenformat.

>   - Speichert die Profiler-Daten als Profiler-Ressourcendatei.

>   Anmerkung
>   Die Menge der von der Profiler Utility im Online-Modus gesammelten Daten ist durch die relativ geringe Größe des Natural Data Collector-Puffers begrenzt, der in einem Wrap-Around-Modus arbeitet. Außerdem wird bei der Ausführung unter CICS oder Com-plete die CPU-Zeit nicht bereitgestellt. Generell empfehlen wir Ihnen, den NaturalONE Profiler für das Profiling interaktiver Natural Großrechner-Anwendungen zu verwenden, weil der NaturalONE Profiler keine Größenbeschränkungen hat und CPU-Performance-Analysen unterstützt.

> Batch-Modus (Großrechner)

>   - Erstellt Profile für Natural-Batch- und Natural-RPC-Anwendungen auf Großrechner-Plattformen.

>   - Erstellt Profile für interaktive Großrechner-Anwendungen, die remote von Natural Studio ausgeführt werden.

>   - Bietet Funktionen für die Verarbeitung großer Datenmengen:

>     - Ereignis-, Programm-, Zähl- und Zeitfilter,

>     - Stichprobentechnik,

>     - Datenkonsolidierung.

>   - Speichert Profiler-Daten als Profiler-Ressourcendatei.

>   - Liest und analysiert Profiler-Ressourcendateien.

>   - Druckt Programm- und Ereignis-Traces aus.

>   - Analysiert die Programm-Performance.

>   - Bewertet die Antwortzeiten von Transaktionen.

>   - Sammelt und zeigt Profiler-Eigenschaften und Statistiken an.

>   - Bietet eine Funktion zum Löschen einer Natural Profiler-Ressourcendatei.

> Batch-Modus (Linux und Windows)

>   - Liest und analysiert Profiler-Ressourcendateien.

>   - Bietet Funktionen für die Verarbeitung großer Datenmengen:

>     - Datenkonsolidierung

>   - Speichert konsolidierte Profiler-Daten als Profiler-Ressourcendatei.

>   - Druckt Programm- und Ereignis-Traces aus.

>   - Analysiert die Programm-Performance.

>   - Zeigt Profiler-Eigenschaften und Statistiken an.

### Funktionsumfang des Natural Profiler Rich GUI-Schnittstelle

- Listet die Profiler-Ressourcen einer bestimmten Library auf.

- Zeigt Profiler-Eigenschaften und Statistiken an.

- Bietet eine Funktion zur Konsolidierung von Profiler-Daten.

- Bietet eine Funktion zum Löschen einer Natural Profiler-Ressourcendatei.

- Visualisiert Profiler-Daten auf einer grafischen, interaktiven Browser-Oberfläche.

- Analysiert die Anwendungs-Performance anhand von Auswahlkriterien wie Library, Programm, Programmzeile oder Benutzer für verschiedene Leistungskennzahlen (KPIs, Key Performance Indicators):

  - CPU-Zeit,

  - verstrichene (elapsed) Zeit,

  - Adabas-Kommandozeit,

  - Trefferzahlen wie Datenbankaufrufe oder Laufzeitfehler.

- Kombiniert den Programmquellcode mit den Profiler-Daten zur Programmanalyse.

## Natural Profiler-Auswertungen

Die folgende Tabelle enthält eine Zusammenfassung der Auswertungskriterien, die von den Natural Profiling Tools zur Verfügung gestellt werden.

Auswertung | Profiling-Tool | Beschreibung
--- | --- | ---
Program Summary | Profiler Utility (Batch) | Programmzusammenfassung Zeigt die CPU-Zeit, die für jedes ausgeführte Natural-Objekt aufgewendet wurde, und die Natural-Ereignisse, die in einem Objekt aufgetreten sind. Siehe auch Beispiel für eine Programmzusammenfassung.
Line Summary | Profiler Utility (Batch) | Zeilenzusammenfassung Zeigt die während der Natural-Programmausführung verbrauchte CPU-Zeit und die verstrichene (elapsed) Zeit für jede einzelne Quellcodezeile sowie die Anzahl der Natural-Ereignisse, die in der Zeile aufgetreten sind. Siehe auch Beispiel für eine Zeilenzusammenfassung.
Transaction Summary | Profiler Utility (Batch) | Transaktionszusammenfassung Zeigt die für jede einzelne Transaktion verbrauchte Antwortzeit und die Anzahl der Natural-Ereignisse, die während der Transaktionsausführung aufgetreten sind. Weitere Informationen siehe Transaktionszusammenfassung. Siehe auch Beispiel für eine Transaktionszusammenfassung.
Hot Spots | NaturalONE Profiler | Brennpunkte Zeigt die von Natural-Objekten, Statements und Programmzeilen verbrauchte CPU-Zeit und die verstrichene (elapsed) Zeit sowie die Häufigkeit der Ausführung eines Objekts oder Statements. Von einer profilierten Programmzeile aus können Sie direkt zu der entsprechenden Quellcode-Zeile navigieren. Siehe auch die entsprechende Beschreibung der Hot Spots unter Using the Natural Profiler in der NaturalONE-Dokumentation.
Data Evaluation | Natural Profiler Rich GUI-Schnittstelle | Datenauswertung Visualisiert die Profiler-Daten auf einer interaktiven Rich-GUI-Benutzeroberfläche. Sie können die Verteilung der CPU- und verstrichenen (elapsed) Zeit, die Adabas-Befehlszeit oder verschiedene Trefferquoten (Hit-Counts) auswerten und Kriterien für die Verteilung auswählen. Siehe auch das Beispiel für eine Datenauswertung im Abschnitt Natural Profiler Rich GUI-Schnittstelle.
Program Analysis | Natural Profiler Rich GUI-Schnittstelle | Programmanalyse Kombiniert den Quellcode der überwachten Programme mit den Profiler-Daten, wobei der Quellcode entsprechend dem Wert des ausgewählten KPIs eingefärbt wird. Siehe auch das Beispiel für eine Programmanalyse im Abschnitt Natural Profiler Rich GUI-Schnittstelle.
Program Trace | Profiler Utility (Batch) | Programm-Trace Zeigt den Programmablauf der profilierten Anwendung in der Aufrufhierarchie und die Anzahl der aufgetretenen Ereignisse. Siehe auch Beispiel für einen Programm-Trace.
Event Trace | NaturalONE Profiler, Profiler Utility | Ereignis-Trace Listet die aufgezeichneten Ereignisdaten in chronologischer Reihenfolge auf. Siehe auch Beispiel für ein Ereignis-Trace, Beispiel für Trace-Datensätze auflisten, und die entsprechende Beschreibung in der NaturalONE-Dokumentation unter Using the Natural Profiler.
Profiler Properties, Profiler Statistics | Natural Profiler Rich GUI-Schnittstelle, Profiler Utility (Batch) | Profiler-Eigenschaften Listet Profiler-Eigenschaften wie die Profiler-Revision und Statistiken der überwachten Anwendung auf, die z. B. die gesamte CPU- und die verstrichene (elapsed) Zeit anzeigen. Siehe auch das Beispiel mit Eigenschaften und Statistiken im Abschnitt Natural Profiler Rich GUI-Schnittstelle und Profiler Statistiken (Batch).

### On this page

- Einführung in die Profil-Erstellung (Profiling)
- Schnellstart für das Profiling
- Plattformspezifische Profil-Erstellung
- Werkzeuge zur Profil-Erstellung (Natural Profiling Tools)
- Natural Profiler-Auswertungen