Work Management: Best Practices for Optimizing Your IBM i


Published on

Today, doing more with less is all about working smarter. And no doubt the market, your competition and our global economy demand that your organization run lean while also being highly productive.

With the IBM i you have a great foundation. But with today’s pressures you need to optimize performance so your system can flow more smoothly, orderly and make the best use of your limited resources.

Join IBM i work management expert Chuck Stupca and learn methods to leverage your system for greater efficiency and effectiveness. We’ll show you how to:
• Use system functions to best manage the workload
• Manage the various sources of work
• Direct jobs to their appropriate work areas

After viewing this presentation you’ll understand the components that make the IBM i such a tremendous workhorse for your organization especially when you optimize the resources you have!

Published in: Technology, Business
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Things to do before the show. 1. Upload the presentation and lobby slides 20-30 minutes ahead of time.2. Change rights for attendees to only chat with panelist3. Change event options and get rid of Q&A4. Auto Advance the lobby Slides every 8 seconds.5. Do audio checks very so often, talk about new features, new products, weather, kid sporting events, the Twins, etc. Ice fishing.There will be a moment of silence while I start the recording.Timing:3 minutes intro40-45 min presentations10 minutes questions.
  • The Robot scheduling solution is one area that came to mind regarding assisting and aiding you in managing the “work” that’s entering the system. We’ve been assisting customers in this area for over 30 years now. Ever night Robot submits millions of jobs all over the world and totally automated.
  • Work Management: Best Practices for Optimizing Your IBM i

    1. 1. Putting IBM i to Work Best Practices for Optimizing your IBM i
    2. 2. Chuck Losinski Director of Automation Technology Broadcasting live from Eden Prairie in Minnesota, USA Chuck Stupca IBM (Retired) Your Hosts
    3. 3. Happy Birthday IBM i
    4. 4. Chuck’s Book
    6. 6. What is Work Management? Hey! Read about Work Management! Work management is defined as: “Work entering the computer system, where it enters, and what resources it uses.”
    7. 7. Putting IBM i to Work • Like all computer systems the IBM i is used to get your work done • In order to do work, the IBM i needs to be told what to do • The IBM i is assigned jobs to perform • Getting these jobs to the IBM i and getting them started is the function of the component called Work Management
    8. 8. Work Management Basics • Work Management is used to locate sources of work, i.e. job assignments • Once a source of work is located, Work Management will control its entry into the system • Work Management will also assign the job a work area
    9. 9. Work Management Groundwork • System startup • System Values • System Pools • Subsystems
    10. 10. System Startup • When the IBM i is started, several initiation tasks are performed • The initiation tasks are designed to prepare the system for use • Several jobs that are used to manage the system are started and are running without any interaction from users • In addition, while the system is starting, System Values are processed
    11. 11. System Values • Several of the system values that are processed are used to establish the work management function: – QMCHPOOL – establishes the size of the machine pool – QBASPOOL – specifies the minimum size of the *BASE pool – QCTLSBSD – identifies the controlling subsystem • QBASE (the default value) • QCTL (another IBM supplied controlling subsystem) • While other system values are used to manage jobs in the system, they are beyond the scope of this presentation
    12. 12. All About Memory Pools • Logical area of main storage where jobs process • Maximum of 64 system pools • Maximum of 10 defined per subsystem description • Memory can be changed dynamically – By interactive commands – By batch commands or APIs – By dynamic tuning
    13. 13. Why Use Multiple Pools? • Different types of jobs – Batch – Interactive – Communication – Printing – System • Batch vs. Interactive – think time • Adjust sizes based on time of day • Assign priorities
    14. 14. System Pools Think of main storage pools as work areas: Reception Sales Accounts Receivable Order Processing Shipping and Receiving IT Executive
    15. 15. System Pools • An IBM i has a minimum of two pools: – QMCHPOOL – this is the *MACHINE pool and is the work area for many important system functions – QBASPOOL – this pool is *BASE and is used for many of the jobs entering the system • As stated earlier, the size of the machine pool is set by the system value QMCHPOOL • All remaining main storage is placed in *BASE • Additional pools may be created to separate different types of work • Storage for additional pools is taken from *BASE
    16. 16. Change Pool Sizes • System values – QMCHPOOL (machine pool) – QBASPOOL (*BASE pool) – QPFRADJ (turns on dynamic tuning) • Commands – CRTSBSD/CHGSBSD – WRKSYSSTS/DSPSYSSTS • WRKSHRPOOL/CHGSHRPOOL
    17. 17. Subsystems • Subsystems are used to manage the jobs entering the system • Subsystems locate work requests and initiate jobs – Sources for batch jobs are identified by a component of the subsystem called a JOBQ entry – Interactive work is located by work station entries • As part of the job initiation process, the subsystem will assign jobs to work areas
    18. 18. Overview of Work Management Communication job Printing jobs Server jobs Hardware microcode Jobs User keys input Batch jobs Subsystems QCMN QSYSWRK QINTER QBATCH QSPL Memory Pools 1 *MACHINE 2 *BASE 3 SERVER 4 *INTERACT 5 Batch 6 Spooling
    19. 19. DSPSYSSTS Command
    20. 20. Controlling Subsystem • Will always be running • Regardless of your choice of controlling subsystem – All types of work can enter the system – Four main storage pools will be defined • *MACHINE • *BASE • *INTERACT • *SPOOL
    21. 21. System with Two Pools All Other Work (*BASE Pool) Executive (Machine Pool)
    22. 22. Getting Work to the System • All work (other than system jobs) enters the system via a subsystem • Where do subsystems look for work? • How do subsystems know where the job will run? • How do run time attributes, such as the job’s priority, get assigned? It’s time to learn Work Management!
    23. 23. QBASE Controlling Subsystem Interactive Work Batch Work QBASE Subsystem Main Storage (*BASE)
    24. 24. Job Start and End Type Start End* Interactive Sign on Sign off Batch Job Queue End of requested command Spool Start writer or reader End writer or reader command Communication Request from remote system End of program in start request Autostart Start of subsystem End of program in routing entry Prestart Start of subsystem or prestart job ENDPJ Batch Immediate JAVA Program or restart job ENDPJ or end of program *All will end with an ENDSBS command.
    25. 25. Starting an Interactive Job • Since the Work Station Entry is the key to finding and starting an interactive job, taking a closer look shows 2 parameters on the Work Station Entry – JOBD(*USRPRF) – AT(*SIGNON) • Since the AT parameter is *SIGNON, the subsystem will send the sign on screen to the device • Once the sign on screen appears the user will enter their identification and password • Because the JOBD (job description) specified is *USRPRF, the user profile will specify the job description to be used • Now, we need to investigate the job description in order to proceed
    26. 26. Starting an Interactive Job • A job description provides a lot of the information necessary to manage a job • While that information is important, the parameter that is used in starting a job is RTGDTA • RTGDTA is used by the subsystem to: – Determine which system pool the job will use – Assign run time attributes to the job • In order to understand this part of the process, another component of the subsystem, routing entries, needs to be examined
    27. 27. Starting an Interactive Job Routing entries are a table that the subsystem uses to lookup the RTGDTA provided by the job description. For an interactive job, the RTGDTA is QCMDI QINTER QINTER WSE User Profile JOBD JOBD Routing Entries QCMDI QCMDI *ALL
    28. 28. Starting a Batch Job • The QBATCH subsystem is looking for work to arrive at the QBATCH job queue • Batch jobs are placed on the queue by the SBMJOB command • The job can be placed on the queue by a job scheduler like Robot/SCHEDULE Enterprise from Help/Systems • Once a job arrives at the queue the initiation process begins
    29. 29. Starting a Batch Job • As with interactive jobs, a batch job will run with a user profile and a job description • The job description can be specified on the SBMJOB command or by the user profile used to run the job • Since most user profiles and job descriptions are designed for interactive work, another parameter on the SBMJOB command, RTGDTA should be supplied • The RTGDTA specified on the command will be used to look for the appropriate routing entry in the subsystem • Usually, the RTGDTA will be QCMDB
    30. 30. Starting a Batch Job QBATCH QBATCH JOBQE User Profile JOBD JOBD Routing Entries QCMDB QCMDB QBATCH SAMPLE QBATCH
    31. 31. Starting a Batch Job • Notice that another object is shown in the initiation process, the job class • Although not shown on the interactive job initiation it is there • The job class is designated on the routing entry used to start the job • The class provides run time attributes for the job • The most important attribute is the job’s priority • The priority of the job determines its importance and is used to manage access to the CPU • The default priority for batch jobs is 50, interactive jobs have a priority of 20
    32. 32. Autostart Jobs • An autostart jobs is a special type of job that will start whenever the subsystem starts • Some typical autostart jobs are system monitors, servers, system setup, etc. • In order to start one of these special jobs, the subsystem has autostart job entries • When the subsystem starts, it will initiate the autostart job entries before any other jobs • QCTL has an autostart job that will collect performance data • Starting an autostart job follows the same procedure as any other job
    34. 34. What is an iASP? • iASP defined – Is this new? • Why do you need an iASP? • How do you use an iASP?
    35. 35. Building Blocks: IBM i iASPs 4 Why use iASPs? – Clusters • Building block for HA/DR storage replication based clustering – Consolidation • Meet compliance needs for isolation • Reduce software footprints • Reduce number of OS upgrades – Archive • Storage performance &cost by iASP – Uptime • Off-line backups with replication • Shorter IPL – leave non-critical iASPs offline till after IPL
    36. 36. 01/07/2013 42 Robot Solutions Automated Job Scheduling Solutions Message Mgmt. Solutions Performance Mgmt. Solutions Report Mgmt. Solutions Backup & Recovery Solutions
    37. 37. © 2013 Help/Systems. Company Confidential.7/1/2013 43 Batch Automated Job Scheduling Interactive E1 and SAP Interfaces Robot/REPLAY Robot/SCHEDULE SCHEDULE Enterprise