1 / 24

Optimizing Batch Job Performance

Optimizing Batch Job Performance. Optimizing Batch Job Performance. Resources Consumed by Program I/O by Database File Name Delays Caused by Object Locks Heaviest Active Job Function Names Record Lock Contention Time Spent on Job Status CPU by Line of Source Code

Télécharger la présentation

Optimizing Batch Job Performance

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Optimizing Batch Job Performance Optimizing Batch Job Performance • Resources Consumed by Program • I/O by Database File Name • Delays Caused by Object Locks • Heaviest Active Job Function Names • Record Lock Contention • Time Spent on Job Status • CPU by Line of Source Code • Duration of ILE Modules • Elapse Time by ILE Procedure Name

  2. System Navigator Identify Job Level Bottleneck First!!

  3. Workload Navigator Is the job CPU, Memory or I/O bound?

  4. Resources Consumed by Program Resources Consumed by Program • “Job” versus “Job Stream” • Application or Operating System • CPU, I/O, Memory, Elapse Time • Date Routines, Tax Calculation Routine • Imbedded SQL, High Initiation/Termination • Stand-alone or Hundreds of Calls • ILE w/ Many Modules versus OPM Program

  5. Operating System Level Operating System Level

  6. Application Level Application Level

  7. I/O by Database File Name I/O by Database File Name • Compare Percent Reads to Writes/Updates • Number of I/Os versus Records in File • Small I/O Counts, Files Opening/Closing • High Sequential Reads, Low Random Reads • Time to Purge or Move Some Data? • “Open Orders” File w/ 7 Years of Closed • Proper Logical Views for Quick Access

  8. I/O Example

  9. Delays Caused by Object Locks Delays Caused by Object Locks • Work Files that Should be in QTEMP • Separate Data Libraries per Location? • Hundreds of Jobs Daytime, One Job at Night • Rare Situations Require Exclusive Locks! • CPYF CRTFILE(*YES) vs. CRTDUPOBJ • Fix the Job, Don’t Live w/ Consequences • Older Code more Prone to Locking Issues

  10. Lock Wait Job Status

  11. Locks by Object Name

  12. Heaviest Active Job Function Names Heaviest Active Job Function Names • Job Going In and Out of Short DLYJOBs • Operating System Rebuilding Access Paths • Job Copying Data with Selection Criteria

  13. Job Function Example

  14. Record Lock Contention Record Lock Contention • Don’t Single Thread, Fear of Record Locks • Not a Bigger Issue at Night versus Daytime • Automatic Notification and Retry • Monitor Time Spent in Lock Wait Status • Release Records in Code if Causing Delays

  15. Record Lock Example

  16. Time Spent on Job Status Time Spent on Job Status • Never Ending Job, Always in RUN Status? • Nightly Job, not Always in RUN Status? • DLYJOB used as Bad Timing Technique • Object Locks for Long Periods of Time • Short Object Locks, Thousands of Times • Data Queue Wait that Never Waits! • Job Waits on Message for Hours Nightly

  17. Job Status Example

  18. CPU by Line of Source Code CPU by Line of Source Code • Is There One Bad Line of Code? • SETON LR at end of Date Routine • CHAIN to CustMast for Every Line Item • Open/Close 50 Files for Each Line Item • OPNQRYFs are 73% of CPU and Elapse • CALL to Tax Routine, 85% of Elapse • Format Date Routine, 93% of Duration

  19. Source Code Example

  20. Duration of ILE Modules Duration of ILE Modules • Complex ILE Bound Program • Identify Specific Module Causing Delays • Date Routines, Tax Calculation Routine • Older Routines, Called for Every Line Item • Outside Loop, Now that Impact is Known

  21. ILE Modules Example

  22. Elapse Time by ILE Procedure Name Elapse Time by ILE Procedure Name • Identify High Use Subroutines • Optimize Those Routines • Minimize Calls to Intensive Routines • Pinpoint Section of Code Needing Rework

  23. ILE Procedure Name Example

  24. Q&A Questions & Answers To receive MB Software’s FREE performance evaluation: 1. Register at http://www.mb-software.com2. Download and install software on AS/400 or iSeries3. Call (800) 713-5034 to schedule your free performance review session What To Expect: After allowing performance data to accumulate for one full business day, you will log into a secure area of MB Software’s web site. We will then have a conference call to discuss our findings and how you can gain performance improvements with your existing applications. It’s that easy!

More Related