IBM Support

FAQ3: How can I Monitor Shared Processor Pools longer term?

How To


Summary

Frequently Asked Questions from 2013 that are still asked today.

Objective

Nigels Banner

Steps

had better point out that any performance tool of AXI command in a POWER Virtual Machine (LPAR) can only see its use of the Physical CPU, the size of its own CPU pool and (if Monitoring is switched on at the HMC), it has a number of the CPU use by "Other LPARs" use of its own CPU Pool.  nmon gets these numbers by default and the nmon analyser graphs this data in the LPAR tab - this assumes its a Shared CPU LPAR. If it is a dedicated CPU LPAR then it can't get any of this Pool data and there is no LPAR tab in the nmon analyser spreadsheet (I get asked this all the time!).

But it you have anything other than the straight forward single Default CPU Pool then this limited picture does not show you want the rest of the machine is doing. This is primarily a security issue (data transmission "side channel") but its also complicated and CPU time consuming for every LPAR to know what all 64 CPU pools it doing - when its really none of its business!

The CPU Pool information is gathered (if switched on) at the HMC via the service processor but extracting it and then using it to generate graphs or spreadsheet data is extremely complex particularly if you have a complex set of up to 64 CPU Pools!

For a starter pack:

Take a look at the Redbook "IBM PowerVM Virtualization Managing and Monitoring" and search for lslparutil command (section 5.2.1 and page 104 in the current release) - it has an example of getting memory stats (for CPU Pools just change the field names you want) but it is a long coding path from there to having graphs/spreadsheets. Here is a example of what you get if you log on to the HMC- the name of my machine on the HMC is 8204-E8A-SN105B0C0:

hscroot@hmc11:~> lslparutil -m 8204-E8A-SN105B0C0 -r procpool -h 1 | tail -1
time=09/06/2013 10:04:25,event_type=sample,
resource_type=procpool,
sys_time=09/06/2013 09:03:45,
time_cycles=3251168417057616,
shared_proc_pool_name=DefaultPool,
shared_proc_pool_id=0,
total_pool_cycles=26009347330218824,
utilized_pool_cycles=45610456617552

You will of course be wanting to remotely execute the comment to get the data off the HMC. Note: I added newlines to make it readable. You then need to do this once every 5 minutes and take the differences and divide time_cycles to get physical CPU numbers that you could start graphing. You would also need to store the numbers, reformat them and use a tool to graph them or create CSV files for a spreadsheet.

There is a further worked example on the lslparutil command manual page where (assuming you have the data collection switched on), you can get history information here shown hourly but it can go down to every 5 minutes or so.
See HMC manual page for lslparutil   I have cut'n'pasted the interesting bit below (probably should not do that but there you go).

lslparutil -m sys1 -r pool --startyear 2006 --startmonth 2
--startday 23 --starthour 0 --endyear 2006 --endmonth 2
--endday 23 --endhour 12 -F time,total_pool_cycles,
utilized_pool_cycles

02/23/2006 12:00:01,134967149091025,467439053292
02/23/2006 11:00:02,134963299532241,467428119008
02/23/2006 10:00:01,134959313365305,467419269942
02/23/2006 09:00:01,134954622214624,467403199531
02/23/2006 08:00:02,134942086330068,467368397739
02/23/2006 07:00:01,134929553859752,467333227651
02/23/2006 06:00:01,134917026289150,467295577359
02/23/2006 05:00:02,134904482088726,467258616569
02/23/2006 04:00:01,134891946956456,467223704573
02/23/2006 03:00:01,134879415157938,467188374373
02/23/2006 02:00:01,134866883128692,467152556956
02/23/2006 01:00:02,134854347365860,467116506907
02/23/2006 00:00:03,134841811733640,467081011935

Pool utilization = (utilized_pool_cycles / total_pool_cycles) * 100
Pool utilization = ((467439053292 - 467081011935) / (134967149091025 - 134841811733640)) * 100
Pool utilization = 0.29%

At the bottom is the calculations you need to make so the numbers make sense. The calculation is only for the first row of data. If you have multiple pools then you have to repeat this for each of the pools!!

As alternative, I would recommend you look at:

  • LPAR2RRD as a free tool to monitor Power machines mostly from the same HMC data we looked at here. It collects Shared CPU pools and loads of other data and has proved very popular with about a third of POWER customers.
  • HMCscanner also gets the data for you and it can do CPU Pool details - which can be good for licensing - it generates specific Tabs for this data.   its a free Java script that generates an Excel spreadsheet.
  • A new Power Systems tool from IBM planned to be released Q4 this year - sorry its not Announced yet so I can't say more but early beta tests look good. It is all GUI and looks at the whole machine level of other resources and drills down to the OS level too. More on this once its announced.

There are plenty of other 3rd part tools too and, of course, ITM which can aggregate data - check that have HMC extraction agents because this is the only place you can get the data.

I hope this helps you either:

  • Get started extracting your HMC data, reformatting it, organising it ready for CSV loading to spreadsheets of say using rrdtool for graphing
  • or I frightens you off and you go look at tools from the genius guys that have worked it all out like LPAR2RRD and the HMCscanner - which are popular because they hit real Power Users needs.
UPDATE FOR 2020
njmon for AIX and VIOS can with the -C option capture the Shared Processor Pools (SPP) for the SSP that the LPAR is in. For a server with many Shared Processor Pools you will need to monitors one LPAR in each pool.

Additional Information


Other places to find content from Nigel Griffiths IBM (retired)

Document Location

Worldwide

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG10","label":"AIX"},"Component":"","Platform":[{"code":"PF002","label":"AIX"}],"Version":"All Versions","Edition":"","Line of Business":{"code":"LOB08","label":"Cognitive Systems"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"HW1W1","label":"Power -\u003EPowerLinux"},"Component":"","Platform":[{"code":"PF016","label":"Linux"}],"Version":"All Versions","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG60","label":"IBM i"},"Component":"","Platform":[{"code":"PF012","label":"IBM i"}],"Version":"All Versions","Edition":"","Line of Business":{"code":"LOB57","label":"Power"}}]

Document Information

Modified date:
14 June 2023

UID

ibm11117593