IBM®
Skip to main content
    Country/region [select]      Terms of use
 
 
    
     Home      Products      Services & solutions      Support & downloads      My account     
 
developerworks > My developerWorks >  Dashboard > AIX > ... > Performance Other Tools > rperf
developerWorks
Log In   View a printable version of the current page.
Overview Connect Spaces Forums Wikis
rperf
Added by nagger, last edited by nagger on Oct 26, 2009  (view change)
Labels: 
(None)

rperf - rPerf Number Finder.

This is a script finds the Relative Performance rPerf number for the current machine or LPAR

This is a simple script that outputs the current machine or LPAR to give you the rPerf number.
The rperf numbers are only available for certain number of CPUs.
If you have a different number of CPUs then a rough calculations is made based on the top number of CPUs and dividing appropriately.

There are some problems:

  1. Older machines don't have rPerf numbers so the script outputs the roltp number. There is no way to convert a roltp number to a rPerf. You will have to apply your own rules for that.
  2. Only certain numbers of CPU have official rPerf Numbers like 4 way, 8 way and 16 way. With LPARs, we can have lots of odd numbers of CPU. In this case, the script guesses the rPerf based on rPerf numbers in a fairly crude way. These are a simple calculation and will not be exact - i.e. it straightens out the SMP curve. The script will give a lower than actual rPerf number.
  3. Shared CPU LPARs that include a faction of a CPU are not handled well - the tool will find the Virtual Processor number and use that as the maximum number of CPUs the LPAR can get.
  4. On shared CPU LPARs the script is not Entitlement aware but entitlement is not a limiting factor on a uncapped LPAR any way. If capped should the script use Entitlement and not VP?
  5. How will the script get updated? - Easy it is a straight forward simple shell script - you can up date it yourself and give the script back to your AIX community - that is what Wiki's are all about.

Feedback, welcome.

Want more information on rPerf and roltp?

  1. Find out more about rPerf numbers from http://www.ibm.com/systems/p/hardware/rperf.html
  2. The current machines rPerf numbers can be found at http://www.ibm.com/systems/p/hardware/factsfeatures.html
  3. Older machine rPerf numbers can be found at http://www.ibm.com/systems/p/hardware/system_perf.html

Download the script: rperf_v7 - Version 7 - October 2009

  • Version 1 - original
  • Version 2 - smaller and faster plus a lot more accurate for small LPARs on larger machines
  • Version 3 - small bug fix and include POWER6 p570 models
  • Version 4 - Includes JS12/22 and POWER6 p520, p550 and p595 models
  • Version 5 - as v4 but with single bug fix for POWER5+
  • Version 6 - as v5 but with single bug fix for POWER5 9131-52A_1900
  • Version 7 - as v6 plus fixed IBM,9117-570_2200 and added IBM,7028-6C4, IBM,7028-6E4, IBM,7029-6C3, IBM,7038-6M2, IBM,7039-651 and IBM,7040-671

If you find errors or add extra machine data yourself (it is by no means complete yet) then please leave comments here.

My machine is a IBM,9117-570_2200.
Can anyone update rPerf so it includes this configuration ?

Posted by lafouine94 at Sep 25, 2009 06:20 | Permalink

IBM,9117-570_2200 issues fixed in v7

Posted by nagger at Oct 26, 2009 06:42 | Permalink

Whast the recommended best way to deal with virtual CPUS in lpars for rPerf? For example in a capped mode, would you get the published rPerf value for the virtual CPUs then devide by the Physical CPU percentage?

Posted by atoma at Nov 05, 2009 15:38 | Permalink

Hi atoma,
You assume to much cleverness in this script.
The "lsdev -Cc processor" command give you the number of physical CPUs in a stand alone machine or the number of dedicated CPU in the LPAR or in a shared CPU LPAR the number of virtual CPUs in the LPAR.
This number is used to calculate the rperf number in whole CPU terms. Calculating the rperf number below a whole CPU is a very tricky process.
Entitlement and capped/uncapped is ignored and would make the calculations much harder.
For Uncapped shared CPUs LPARs, the virtual CPUs is the maximum CPU time it can reach - assuming spare capacity so that is fair enough.
For capped shared CPU the maximum is the Entitlement but in this case setting a higher virtual CPU number is pointless as AIX will fold away unused CPUs. So if the virtual CPUs is just enough for the entitlement then again the virtual CPUs is the right number or close to it.
So this rperf script does a reasonable job in a simple way but has a few limitations.
Thanks Nigel

Posted by nagger at Nov 05, 2009 18:10 | Permalink

For lookup values IBM,7040-671_1100_ and 671_1500_ they are missing the call to matchup.

Also,
You might change the matchup function to something like the following allowing for nearly unlimited inputs. Could be useful with the p7's coming out. This version of matchup would also remove the need for lookup1.

matchup()

Unknown macro: { # Debug echo matchup $@ if(( $# % 2 )) then print -u2 "nIncorrect number of arguements for in matchup for $lookupn" exit 2 fi rating=0 while (( $# && rating == 0 )) do CPU=$1 PERF=$2 shift 2 if((cpus==$CPU)) then rating=$PERF elif((cpus<$1)) then (( rating = $PERF/$CPU * $cpus )) estimated="estimated" fi done }
Posted by Allan Cano at Dec 07, 2009 13:51 | Permalink

Sorry about the formatting. Gotta add learning wiki markup to my list.

Posted by Allan Cano at Dec 07, 2009 13:53 | Permalink

 
    About IBM Privacy Contact