----- Original Message -----
From: Kris Buelens
To: IBMVM@LISTSERV.UARK.EDU
Sent: Tuesday, July 04, 2006 10:18 PM
Subject: Re: Performance Toolkit Tables
We had an extra RTM user with an interval set to of 15 minutes, as opposed
to the
normal RTM user that I gave an interval of 1 minute. This special RTM user
was
created to grab averages in real time and react to them (e.g. warn
operators when
users consume lots of CPU during 15 minutes, or to detect abnormal changes
etc...)
So, I plan to use VMPTK's "Interval" data for this goal (we're not only
looking at
users but also at DASD, BLOCKIO, PAGING, etc...)
For users I should only get the top 10 (or alike) consumers, so a VMC SORT
%
CPU came to my mind. But, I saw that when a VMC user sends a SORT %CPU,
also the main PERFSVM user then sorts by %CPU, even though he himself did
not
ask for it. So, I forget the SORTand I need to get a full report.
Yes, this is working as designed: screens can only be sorted the same way
for all users.
And again: from PerfKit's view the PIPE VMC call is, at the moment, just
another
interactive user.
But couldn't you agree on a default sort of %CPU for the USER screen?
Everybody else
would still be able to interactively change the sort sequence to whatever
they want while
they're looking at the data. They'd just risk to have you reset it to %CPU
every 15 minutes.
Doesn't seem such a problem to me, especially since you'll need to switch
also the
observation period from whatever it was to 'INTERIM' before you obtain your
data. So
whoever is in an interactive monitoring session at the same time is likely
to notice a change
anyway.
Now, how can a REXX EXEC know it grabbed everything? The only method I
found was sending a NEXT and looking at the last line, if it didn't change,
I've got
everything (and some doubles easily thrown away). Comparing the last lines
between two NEXTs makes only sense when PERFSVM reports about the same
interval. So, that is why I must also compare the interval reported about.
Note: the PIPE (REXX) stage to get a whole report is general, otherwise, I
could
indeed simply test if the last reported userid remains identical. Now that
I'm
writing this, I may review my logic and add another parameter that can be
used to
find the end based on userid only.
Kris,
Kris, I absolutely agree that PerfKit should have an interface that allows
you to get all of
the data you selected with a single retrieve command, and in machine
readable format. But
it's no longer my code and I no longer have access to it, so you'll have to
convince not me
but Endicott. I'm just trying to show how things could be done even with the
current PerfKit
level, possible in a less than perfect way.
And, as I mentioned in an earlier append, you can use the 'FC USRLIMIT ..'
command
to automatically monitor CPU consumption and I/O activity of users. More
such stuff
could easily be added, and this is really how I would have liked to have
things done:
implement the logic once in PerfKit, instead of having everybody code their
own REXX.
(Yes, I know, the wide range of different workloads probably won't allow
making
everybody happy with some standard routines. But we could at least try ..)
Eginhard