DE10238575A1 - Method for measuring the net runtime of a data processing program - Google Patents
Method for measuring the net runtime of a data processing program Download PDFInfo
- Publication number
- DE10238575A1 DE10238575A1 DE2002138575 DE10238575A DE10238575A1 DE 10238575 A1 DE10238575 A1 DE 10238575A1 DE 2002138575 DE2002138575 DE 2002138575 DE 10238575 A DE10238575 A DE 10238575A DE 10238575 A1 DE10238575 A1 DE 10238575A1
- Authority
- DE
- Germany
- Prior art keywords
- program
- runtime
- time
- net
- system time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
- G06F11/3423—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time where the assessed time is active or idle time
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Ein Verfahren zur Messung der Nettolaufzeit (RT1) eines Programms (T1) einer Datenverarbeitungsanlage, in welcher eine Systemzeit (ST) messbar ist, umfasst folgende Schritte: DOLLAR A a) Als Nettolaufzeit (RT1) des Programms (T1) wird der Wert null gespeichert. DOLLAR A b) Bei Start bzw. Fortführung des Programms (T1) wird die Systemzeit (ST) als Startzeit (SZ) des Programms (T1) gespeichert. DOLLAR A c) Bei Unterbrechung bzw. Abschluss des Programms (T1) wird die Differenz zwischen Systemzeit (ST) und gespeicherter Startzeit (SZ) zur Nettolaufzeit (RT1) addiert. DOLLAR A d) Wiederholung der Schritte b) und c) bis zum Abschluss des Programms (T1).A method for measuring the net runtime (RT1) of a program (T1) of a data processing system, in which a system time (ST) can be measured, comprises the following steps: DOLLAR A a) The value zero is stored as the net runtime (RT1) of the program (T1) , DOLLAR A b) When the program (T1) is started or continued, the system time (ST) is saved as the start time (SZ) of the program (T1). DOLLAR A c) When the program (T1) is interrupted or completed, the difference between the system time (ST) and the saved start time (SZ) is added to the net run time (RT1). DOLLAR A d) Repeat steps b) and c) until the end of the program (T1).
Description
Die Erfindung betrifft ein Verfahren zur Messung der Nettolaufzeit eines Programms einer Datenverarbeitungsanlage.The invention relates to a method for measuring the net runtime of a program in a data processing system.
Ein Datenverarbeitungsprogramm, welches eine
Bruttolaufzeitmessung sowie eine Nettolaufzeitmessung eines Programms
ermöglicht,
ist beispielsweise aus der
Der Erfindung liegt die Aufgabe zugrunde, ein unter variablen Betriebsmodi einer Datenverarbeitungsanlage einsetzbares und aussagekräftiges Verfahren zur Messung der Nettolaufzeit eines Programms der Datenverarbeitungsanlage anzugeben.The invention is based on the object usable under variable operating modes of a data processing system and meaningful procedure for measuring the net runtime of a program of the data processing system specify.
Diese Aufgabe wird erfindungsgemäß gelöst durch ein Verfahren mit den Merkmalen des Anspruchs 1. Hierbei wird die Nettolaufzeit eines Programms einer Datenverarbeitungslage, in welcher eine Systemzeit messbar ist, mit folgenden Schritten ermittelt:
- a) Als Nettolaufzeit des Programms wird der Wert null gespeichert,
- b) bei Start bzw. Fortführung des Programms wird die Systemzeit als Startzeit des Programms gespeichert,
- c) bei Unterbrechung bzw. Abschluss des Programms wird die Differenz zwischen Systemzeit und gespeicherter Startzeit zur Nettolaufzeit addiert und
- d) Wiederholung der Schritte b) und c) bis zum Abschluss des Programms .
- a) The value zero is saved as the net runtime of the program,
- b) when the program is started or continued, the system time is saved as the start time of the program,
- c) if the program is interrupted or completed, the difference between the system time and the saved start time is added to the net runtime and
- d) repetition of steps b) and c) until the end of the program.
Das Verfahren ist nutzbar bei einer Datenverarbeitungsanlage, welche das Auslesen der absoluten Zeit, der so genannten Systemzeit durch ein Programm vorsieht. Unter der Nettolaufzeit des Programms wird die reine Bearbeitungs- oder Rechenzeit ohne Unterbrechungen oder zwischengeschaltete Bearbeitungen anderer Programme verstanden. Inwieweit unter dem Begriff "Programm" auch Unterprogramme subsumiert sind, kann vom Benutzer festgelegt werden oder für das Verfahren einheitlich vorgegeben sein. Beispielsweise können in die Nettolaufzeitmessung stets sämtliche dem Programm zugeordnete Unterprogramme einbezogen werden. Im Gegensatz hierzu wird unter Bruttolaufzeit der gesamte zur Abarbeitung des Programms erforderliche Zeitbedarf verstanden, d.h. die Differenz zwischen der Systemzeit bei Abschluss des Programms und der Systemzeit bei Start des Programms. In der Bruttolaufzeit können somit auch Zeitintervalle enthalten sein, in welchen die Bearbeitung des Programms gestoppt ist und beispielsweise ein zweites Programm abgearbeitet wird. Eine Bruttolaufzeitmessung kann parallel zur Nettolaufzeitmessung durchgeführt werden.The method can be used with a Data processing system, which reads out the absolute time, the so-called system time through a program. Under the The net runtime of the program becomes the pure processing or computing time without interruptions or intermediate edits by others Programs understood. To what extent under the term "program" too Subroutines are subsumed, can be determined by the user or for the procedure must be specified uniformly. For example, in the net runtime measurement always all subroutines assigned to the program are included. In contrast For this purpose, the total for processing the Understand the time required by the program, i.e. the difference between the system time at the end of the program and the system time at the start of the program. Time intervals can therefore also be used in the gross runtime be included, in which the processing of the program stopped and a second program is being processed, for example. A Gross runtime measurement can be carried out in parallel to the net runtime measurement.
Vorzugsweise wird eine Nettolaufzeit eines während Unterbrechungen des Programms ablaufenden zweiten Programms ebenfalls gemessen. Analog ist eine Nettolaufzeitmessung bei einer beliebigen Anzahl weiterer Programme möglich, deren Bruttolaufzeiten sich in beliebiger Weise überschneiden.A net runtime is preferred one during Interruptions in the program running second program also measured. Analog is a net runtime measurement for any one Number of other programs possible, whose gross terms overlap in any way.
Nach einer bevorzugten Weiterbildung wird die Nettolaufzeit eines zweiten Programms, welches während einer Unterbrechung des Programms, d.h. innerhalb der Bruttolaufzeit des Programms abläuft, gemessen und vorzugsweise durch das Programm gespeichert. Hierbei hat vorzugsweise das zweite Programm eine höhere Priorität als das erste, durch den Ablauf des zweiten Programms unterbrochene Programm. Hierdurch ist auf einfache Weise feststellbar, inwieweit der Ablauf eines Programms durch ein zweites Programm, welches höher prior als das erste Programm ist, unterbrochen wird.After a preferred training is the net runtime of a second program which is run during a Interruption of the program, i.e. within the gross term of the Program expires, measured and preferably saved by the program. Here preferably the second program a higher one priority as the first program interrupted by the execution of the second program. This makes it easy to determine to what extent the process of a program by a second program which has a higher priority when the first program is interrupted.
Alternativ kann auch das erste Programm eine höhere Priorität als das zweite Programm aufweisen, beispielsweise wenn das erste Programm ein Betriebsmittel belegen will (Semaphore), das bereits vom zweiten Programm belegt ist.Alternatively, the first program can be one higher priority than the second program, for example when the first Program wants to occupy a resource (semaphore) that already is occupied by the second program.
Die Speicherung der Nettolaufzeit eines Programms in einem weiteren Programm einer anderen Prioritätsebene ist analog auf eine höhere Anzahl an Programmen und/oder Prioritätsebenen ausdehnbar.The storage of the net runtime one program in another program of a different priority level is analogous to a higher one Extendable number of programs and / or priority levels.
Nachfolgend wird ein Ausführungsbeispiel der Erfindung anhand einer Zeichnung näher erläutert. Hierin zeigt die einzige Figur schematisch den Ablauf zweier Programme einer Datenverarbeitungsanlage.An embodiment of the Invention explained in more detail with reference to a drawing. Here shows the only one Figure schematically shows the flow of two programs of a data processing system.
Die Datenverarbeitungsanlage ermöglicht die Messung der absoluten Zeit oder Systemzeit ST, beispielsweise mit einer Auflösung im Millisekunden- oder Mikrosekundenbereich. Ein erstes Programm oder Task T1 sowie ein zweites Programm oder Task T2 werden zwischen der Systemzeit ST = 0 und der Systemzeit ST = 20 abgearbeitet. Beide Programme T1,T2 sind so genannte Anwenderprogramme, wobei das zweite Programm T2 einen Mailversand durch die Datenverarbeitungsanlage betrifft. Das zweite Programm T2 hat eine höhere Priorität als das Programm T1, d.h. der Ablauf des Programms T1 wird durch den Mailversand unterbrochen.The data processing system enables Measurement of the absolute time or system time ST, for example with a resolution in the millisecond or microsecond range. A first program or Task T1 and a second program or task T2 are between the system time ST = 0 and the system time ST = 20 processed. Both Programs T1, T2 are so-called user programs, the second Program T2 sends a mail through the data processing system concerns. The second program T2 has a higher priority than that Program T1, i.e. the execution of program T1 is determined by the mail dispatch interrupted.
Zur absoluten Zeit ST = 0 beginnt der Ablauf des Programms T1. Hierbei ist eine Laufzeit oder Nettolaufzeit RT1 des Programms T1 auf null gesetzt. Gleichzeitig wird als Startzeit SZ die aktuelle Systemzeit ST = 0 gespeichert. Das Programm T1 läuft zunächst bis zur Systemzeit ST = 4 und wird zu diesem Zeitpunkt durch das höher priore zweite Programm T2 ver drängt. Die Systemzeit ST = 4 beim Umschalten zwischen dem Programm T1 und dem zweiten Programm T2 wird zum einen zur Ermittlung der Laufzeit RT1 des Programms T1 genutzt. Hierbei wird zum gespeicherten Wert der Laufzeit RT1 des Programms 1, in diesem Fall also dem Wert null, die Differenz aus der aktuellen Systemzeit ST und der gespeicherten Startzeit SZ addiert. Damit ergibt sich zur absoluten Zeit ST = 4 eine Laufzeit RT1 des Programms T1 von 4 (relative Einheiten). Zum anderen wird die aktuelle Systemzeit ST = 4 als neue Startzeit SZ, in diesem Fall des zweiten Programms T2, gespeichert. Da im Ausführungsbeispiel stets nur ein einziges Programm gleichzeitig abläuft, genügt es, die Möglichkeit der Speicherung lediglich einer einzigen Startzeit SZ vorzusehen.The program T1 begins at the absolute time ST = 0. Here, a runtime or net runtime RT1 of the program T1 is set to zero. At the same time, the current system time ST = 0 is saved as the start time SZ. The program T1 initially runs up to the system time ST = 4 and is then displaced by the higher priority second program T2. The system time ST = 4 at Switching between the program T1 and the second program T2 is used on the one hand to determine the runtime RT1 of the program T1. The difference between the current system time ST and the stored start time SZ is added to the stored value of the runtime RT1 of program 1, in this case the value zero. This results in a runtime RT1 of the program T1 of 4 (relative units) at the absolute time ST = 4. On the other hand, the current system time ST = 4 is stored as the new start time SZ, in this case the second program T2. Since in the exemplary embodiment only one program always runs at the same time, it is sufficient to provide the possibility of storing only a single start time SZ.
Die Laufzeit RT2 des zweiten Programms T2 wird bei dessen Start, d.h. zur Systemzeit SZ = 4 auf null gesetzt. Das zweite Programm T2 läuft ohne Unterbrechung bis zur Systemzeit ST = 10 und ist zu diesem Zeitpunkt vollständig abgearbeitet, d.h. der Mailversand ist durchgeführt. Bei der Systemzeit ST = 10 wird die Laufzeit RT2 des zweiten Programms T2 ermittelt. Die Laufzeit RT2 ergibt sich, da das gesamte zweite Programm T2 ohne Unterbrechung während eines einzigen Zeitintervalls abgelaufen ist, aus der Differenz zwischen der aktuellen Systemzeit ST = 10 und der gespeicherten Startzeit SZ = 4.The runtime RT2 of the second program T2 is started when it starts, i.e. set to zero at system time SZ = 4. The second program T2 is running without interruption up to the system time ST = 10 and is at this Time completely processed, i.e. the mail has been sent. With the system time ST = 10, the runtime RT2 of the second program T2 is determined. The Runtime RT2 results because the entire second program T2 without Interruption during a single time interval has elapsed, from the difference between the current system time ST = 10 and the saved one Start time SZ = 4.
An den Abschluss des zweiten Programms T2 zur Systemzeit ST = 10 schließt sich direkt die Fortführung des ersten Programms T1 an. Die Systemzeit ST = 10 wird als Startzeit SZ gespeichert. Als Laufzeit RT1 des Programms T1 ist weiterhin der Wert 4 gespeichert. Das Programm T1 wird zur Systemzeit ST = 13 unterbrochen durch einen Interrupt IR. Die Systemzeit ST = 13 zum Zeitpunkt des Interrupts IR wird herangezogen zur erneuten Berechnung der Laufzeit RT1 des Programms T1. Zur zuvor gespeicherten Laufzeit RT1 = 4 wird die Differenz zwischen aktueller Systemzeit ST = 13 und zuletzt gespeicherter Startzeit SZ = 10 addiert. Damit ergibt sich eine neue ge speicherte Laufzeit RT1 = 7. Der Interrupt IR dauert an bis zur Systemzeit ST = 16. Zu diesem Zeitpunkt wird die Bearbeitung des Programms T1 fortgeführt. Die Systemzeit ST = 16 wird als neue Startzeit SZ gespeichert und ersetzt die zuvor gespeicherte Startzeit SZ = 10. Das Programm T1 wird im Weiteren ohne Unterbrechung fortgeführt und zur Systemzeit ST = 20 abgeschlossen. Die Laufzeit oder Nettolaufzeit RT1 des Programms T1 beträgt damit insgesamt 11. Die Bruttolaufzeit des Programms T1, welche sich aus der Differenz zwischen der Systemzeit ST = 20 bei Abschluss des Programms T1 und der Systemzeit ST = 0 bei Start des Programms ergibt, ist damit zu 55% von der Nettolaufzeit RT1 des Programms T1 ausgefüllt.At the conclusion of the second program T2 closes at system time ST = 10 the continuation itself of the first program T1. The system time ST = 10 is the start time SZ saved. The runtime RT1 of the program T1 is still the value 4 saved. Program T1 becomes ST = at system time 13 interrupted by an interrupt IR. The system time ST = 13 at the time of the interrupt IR is used for the new calculation the runtime RT1 of the program T1. At the previously saved runtime RT1 = 4 becomes the difference between the current system time ST = 13 and last saved start time SZ = 10 added. This results in a new stored runtime RT1 = 7. The interrupt IR lasts on up to the system time ST = 16. At this point the processing of program T1 continued. The system time ST = 16 is saved as the new start time SZ and replaces the previously saved start time SZ = 10. The program T1 is continued without interruption and at system time ST = 20 completed. The runtime or net runtime RT1 of the program T1 is thus a total of 11. The gross runtime of program T1, which is the difference between the system time ST = 20 at completion of the program T1 and the system time ST = 0 at the start of the program is 55% of the net runtime of the program T1 filled out.
Claims (4)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2002138575 DE10238575A1 (en) | 2002-08-22 | 2002-08-22 | Method for measuring the net runtime of a data processing program |
EP03018250A EP1391824A3 (en) | 2002-08-22 | 2003-08-11 | Method of measuring the net runing time of a computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2002138575 DE10238575A1 (en) | 2002-08-22 | 2002-08-22 | Method for measuring the net runtime of a data processing program |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10238575A1 true DE10238575A1 (en) | 2004-03-04 |
Family
ID=30775520
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2002138575 Withdrawn DE10238575A1 (en) | 2002-08-22 | 2002-08-22 | Method for measuring the net runtime of a data processing program |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP1391824A3 (en) |
DE (1) | DE10238575A1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7774784B2 (en) * | 2005-03-17 | 2010-08-10 | Microsoft Corporation | Determining an actual amount of time a processor consumes in executing a portion of code |
EP2313827B1 (en) * | 2008-06-11 | 2019-07-24 | QUALCOMM Incorporated | Method and system for measuring task load |
JP4905597B1 (en) * | 2011-03-15 | 2012-03-28 | オムロン株式会社 | Controller support device, controller support program to be executed in the device, and recording medium storing the program |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4937780A (en) * | 1986-05-30 | 1990-06-26 | Bull Nh Information Systems, Inc. | Single instruction updating of processing time field using software invisible working registers |
JP3588485B2 (en) * | 1994-08-26 | 2004-11-10 | 富士通株式会社 | Process scheduling method |
US5872913A (en) * | 1997-03-07 | 1999-02-16 | International Business Machines Corporation | System and method for low overhead, high precision performance measurements using state transistions |
-
2002
- 2002-08-22 DE DE2002138575 patent/DE10238575A1/en not_active Withdrawn
-
2003
- 2003-08-11 EP EP03018250A patent/EP1391824A3/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
EP1391824A2 (en) | 2004-02-25 |
EP1391824A3 (en) | 2004-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CH645999A5 (en) | TROUBLESHOOTING DEVICE FOR MICRO PROGRAMS. | |
DE3036926C2 (en) | Method and arrangement for controlling the workflow in data processing systems with microprogram control | |
DE3544079C2 (en) | Process for processing interrupt signals | |
WO2015082156A1 (en) | Device and method for changing operating settings of a technical installation | |
DE10238575A1 (en) | Method for measuring the net runtime of a data processing program | |
DE10061001B4 (en) | Method and control unit for controlling technical processes in a motor vehicle, and storage element and control program therefor | |
DE3311297A1 (en) | NUMERIC CONTROL | |
DE102015221892A1 (en) | Determination of maximum latency | |
DE10065498A1 (en) | Reconstructing control program process flow, involves generating table from contents of tables generated during process containing identity of last process carried out before each new task | |
DE69911461T2 (en) | METHOD FOR ORGANIZING THE PRODUCTION OF AN ASSEMBLY LINE OF DIFFERENTLY EQUIPPED UNITS LIKE MOTOR VEHICLES | |
EP2908197A1 (en) | Method and engineering system for loading objects of a control program into an automation device | |
DE2846053A1 (en) | Programme monitoring system for use with processors - has continuous check on programme cycle using decoded addresses which produce output on demand by memory-write signal | |
DE4224508A1 (en) | Digital data transmission bit rate determination using interrupt - counting pulses within specific period providing value to determine frequency, to start and stop counter. | |
WO2009034063A2 (en) | Edf implementation for real-time systems having static priorities | |
DE102009054233A1 (en) | Method for navigation, particularly for motor vehicle, involves providing geometric maps data, where rate of temporal limited valid traffic congestion information is provided with time windows | |
EP1393173B1 (en) | Configuration for executing data processing processes and method for determining the optimal access strategy | |
DE102008010385B4 (en) | Method and data transmission system for serial data transmission between a control device and at least one subscriber device | |
DE102023004241A1 (en) | Method for calculating a route of a motor vehicle | |
DE10240133A1 (en) | Equivalence comparison method for comparison of digital circuits during design, whereby an initial stored description is converted into at least two circuit descriptions in a second format followed by an equivalence comparison | |
DE102022133518A1 (en) | Method and system for developing and testing by simulation | |
DE10303684B4 (en) | Method and device for the formal circuit verification of a digital circuit | |
DE102021100598A1 (en) | CAUSE ANALYSIS WHEN SYNCHRONIZING REAL-TIME WITH NON-REAL-TIME PARTIAL SIMULATIONS | |
DE602006000148T2 (en) | Method for further treatment of brake information | |
DE19609646A1 (en) | Computer program correction system | |
DE102006037574A1 (en) | Production planning involves making first and further predictions of numbers of examples required in production period, recording times at which further predictions are made, using operating protocol that can be implemented by computer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8139 | Disposal/non-payment of the annual fee |