TEST
See TEST in the Enterprise COBOL for z/OS® Programming Guide for a full discussion of the TEST option and suboptions including a discussion of performance versus debugging capability tradeoffs.
- NOTEST performs better than TEST(NOEJPD)
- TEST(NOEJPD) performs significantly better than TEST(EJPD)
TEST(NOEJPD)
and a non-zero OPTIMIZE
level:
The JUMPTO
and GOTO
commands are
not enabled, but you can use JUMPTO
and GOTO
if
you use the SET WARNING OFF
command. In this scenario, JUMPTO
and GOTO
will
have unpredictable results.TEST(NOEJPD) also restricts the optimizer, but much less so than TEST(EJPD). The NOEJPD suboption allows the viewing of data items at statement boundaries and this restricts the optimizer in removing some dead code and dead stores.
The table below shows average execution time performance numbers over a set of IBM® internal performance benchmarks.
The numbers were produced at OPT(1) and OPT(2), using different TEST suboptions. The percentages show the performance degradations of TEST(NOEJPD) or TEST(EJPD) over NOTEST.
OPT level | TEST(NOEJPD) % degradation versus NOTEST | TEST(EJPD) % degradation versus NOTEST |
---|---|---|
OPT(1) | 5.8% | 20.9% |
OPT(2) | 11.1% | 28.5% |
As expected, this demonstrates the much larger impact on performance of TEST(EJPD) versus TEST(NOEJPD).