Sunday, 11 August 2013

COBOL Using CALLs.

When using CALLs, be sure to consider using nested programs when possible. The performance of a CALL to a nested program is faster than an external static CALL; external dynamic calls are the slowest.
CALL identifier is slower than dynamic CALL literal. Additionally, you should consider space management tuning (mentioned earlier in this paper) for all CALL intensive applications.
With static CALLs, all programs are link-edited together, and hence, are always in storage, even if you do not call them. However, there is only one copy of the bootstrapping library routines link-edited with the application.
With dynamic CALLs, each subprogram is link-edited separately from the others. They are brought into storage only if they are needed. However, each subprogram has its own copy of the bootstrapping library routines link-edited with it, bringing multiple copies of these routines in storage as the application is executing.
Performance considerations for using CALLs (measuring CALL overhead only):
  • CALL to nested programs was 50% to 60% faster than static CALL.
  • Static CALL literal was 45% to 55% faster than dynamic CALL literal.
  • Static CALL literal was 60% to 65% faster than dynamic CALL identifier.
  • Dynamic CALL literal was 15% to 25% faster than dynamic CALL identifier.

Created with Artisteer

No comments:

Post a comment