An analysis of execution time performance of Cobol vs. PL/1 code-as generated by two compilers and tested by a benchmark written originally in Cobol-provides insights into the relative complexity and shape of their corresponding language functions.
COBOL VS. PLI1: SOME PERFORMANCE COMPARISONS
PAUL J. JALICSThe benchmark program was implemented in both languages and written so as to use identical data types and language facilities where they exist and close approximations elsewhere. Measured results from eleven separate tests were then used to evaluate the relative merits of code generated for each language in that particular area. The results in some cases were quite surprising and required the running of additional experiments to explain the outcome.The original benchmark was written in Cobol and is called BNCl. Subsequently, three PL/1 versions were created: BNC6, BNC7 and BNC8. BNC6 is the original translation; Cobol COMP-3 items were interpreted as PIC '9' items and PERFORMS as PROCEDURE calls. BNC7 interprets Cobol COMP-3 items as FIXED DECI-MAL and enumerates multiple occurrences of sections of code PERFORMed in Cobol rather than use PROCE-DURES. Finally, BNC8 is similar to BNC7 but uses PROCEDURE calls to implement PERFORM. BNC6 can be thought of as a Cobol programmer's conservative translation whereas BNC7 and BNC8 are translations more favorable to PL/1. In all three PL/1 versions, data-items were translated exactly wherever possible, e.g., COMP to FIXED BINARY, PIC to PIC, etc.The benchmark breaks down into 11 separate tests each of which is timed separately using an assembler © 1984 ACM 0001-0782/84/0300-0216 7511