Using preinitialization services (CEEPIPI)
LE preinitialization services (CEEPIPI) can also be used to improve the performance of non-LE-conforming Assembler calling COBOL.
LE preinitialization services let an application initialize the LE environment once, execute multiple LE-conforming programs, then explicitly terminate the LE environment. This substantially reduces the use of system resources that would have been required to initialize and terminate the LE environment for each program of the application.
See “Using CEEPIPI with Call_Sub” for an example of using CEEPIPI to call a COBOL subprogram and “Using CEEPIPI with Call_Main” for an example of using CEEPIPI to call a COBOL main program.
- One testcase (a non-LE-conforming Assembler calling COBOL) using CEEPIPI to invoke the COBOL program as a subprogram was 99% faster than not using CEEPIPI.
- The same program using CEEPIPI to invoke the COBOL program as a main program was 95% faster than not using CEEPIPI.
See First program not LE-conforming for additional performance considerations comparing using CEEPIPI with other environment initialization techniques.
Using preinitialization services (z/OS® Language Environment Programming Guide)