Hallo,
ich habe ein RPG Modul welches mir die Programmbibliothek zurück liefert:
Name: RPGACTLIB
Nun habe ich jeweils ein RPG, CL und Cobol Programm welche dieses Modul 1000 mal aufrufen (Performance Test). Dabei fällt auf, dass das Cobol Programm wesentlich mehr CPU Zeit benötigt als das CL/RPG Programm. Die folgenden Auswertungen wurden durch das Journal QACGJRN aufgezeichnet:Code:D SDS D LIBNAME 81 90 * C *ENTRY PLIST C PARM X_LIBNAME 10 C EVAL X_LIBNAME=LIBNAME C EVAL *INLR=*ON
RPG Code:Code:JOB- CPU ZEIT NAME AKTIV ILE_RPG 638 819 ILE_COBOL 3.663 4.386 ILE_CL 655 825
CL Code:Code:D CALLRPG PR ExtProc('RPGACTLIB') D LIBNAME 10A D D LIBNAM S 10A * c do 1000 C callp CALLRPG(LIBNAM) c enddo C EVAL *INLR=*ON
Cobol Code:Code:PGM DCL VAR(&LIB) TYPE(*CHAR) LEN(10) DCL VAR(&ZAEHLER) TYPE(*DEC) LEN(5) CHGVAR VAR(&ZAEHLER) VALUE(0) ANF010: CHGVAR VAR(&ZAEHLER) VALUE(&ZAEHLER + 1) CALLPRC PRC(RPGACTLIB) PARM(&LIB) IF COND(&ZAEHLER *NE 1000) THEN(GOTO + CMDLBL(ANF010)) ENDPGM
Der Test wurde unter V4R5 als auch unter V5R2 ausgeführt.Code:WORKING-STORAGE SECTION. 01 LIB-WRK PIC X(10). *------------------------------------------------------- LINKAGE SECTION. *------------------------------------------------------- *------------------------------------------------------- PROCEDURE DIVISION. *------------------------------------------------------- STEUER SECTION. ANFANG. PERFORM 1000 TIMES CALL PROCEDURE "RPGACTLIB" USING LIB-WRK END-PERFORM. ENDE. GOBACK.
Kann mir jemand erklären, warum das Cobol Programm in diesem Fall so viel mehr CPU Zeit verbraucht?
Gruß
Matthias
![[NEWSboard IBMi Forum]](images/duke/nblogo.gif)

Mit Zitat antworten
Bookmarks