The AIX Virtual User Group continues its impressive lineup of speakers. This month Janel Barfield stepped through Partition Creation Settings. She covered plenty of aspects of the menus in the HMC where you create a logical partition, including the most misunderstood aspect of LPAR creation: Virtual Processors.
Here are my rough transcripts of some important sections which were addressed. The first one comes in at about 19:40 into the presentation recording and deals with the concern many people have of assigning too many virtual processors to an LPAR:
If we have too many Virtual Processors is there a negative outcome?
Janel goes a little more into the assignment of Virtual Processors later on in the presentation.
You're not going to increase LPAR CPU load – that can only be increased by the workload on the LPAR. You could worry about context switching. From AIX 5.3 ML 3, there's something called virtual processor folding – if you've got virtual processors, more than you actually need for the application load on your system, so they're not all being used, then AIX will put those virtual processors to sleep, so they're not mapped onto physical processors in the processor pool by the hypervisor. You won't get the case where you're putting on Virtual Processors with no work queued to it.
Processor folding is a cool feature in AIX that makes it so you don't have to worry about having too many virtual processors assigned. So it's better if you've got an uncapped partition, and the partition is going to have a heavy load, (either all the time or at a peak time) then it's best practice to take advantage if there's excess processor in the pool, than to limit the number of virtual processors in the pool because you're worried about context switching.
Before going further into the presentation, it's worth revising what is meant by Entitled Capacity. This is the actual guaranteed physical capacity assigned to a partition. This will be the Desired amount (if it's available in the Shared Processor Pool at the time of activating the partition), or may be less than the Desired, down to the Minimum required to Activate the partition. (Less than the minimum means the LPAR can't get activated).
However, if there has been a DLPAR operation since that activation, the Entitled Capacity can vary anywhere within the range of Minimum to Maximum for the partition.
So ordinarily, the Entitled Capacity (or EC) will be the Desired amount, unless it's not available, in which case it will be somewhere between the min and the desired. For more details, see the Virtualization Concepts wiki.
Back to Janel's presentation.
Maximum Processing Units
How about this comment about Maximum processing units? (at 23:45)
For an uncapped partition, the maximum processor units setting has no effect on how much processor this partition could use. So per partition, the maximum processing units only affects the Entitled Capacity [which displays as EC in nmon/topas]. The Entitled capacity is what the partition is either activated with when it's started (somewhere between the mimimum and the desired processing units) or the amount allocated following a Dynamic LPAR operation. The maximum only affects the Entitled Capacity in regards to DLPAR, (how much you can increase the Entitled Capacity using DLPAR).Why not set your maximum processing units to the max you have in the system? (27:45)
Even if the maximum processing units is 1,
So the maximum processing units does not limit the ability of the partition to use beyond its entitled capacity. It only affects how we can change the entitled capacity by DLPAR.
- if this partition is uncapped, and
- it needs more than one whole processor, and
- more than one whole processor's available, and
- when we take into consideration all the other uncapped partitions, it's available to this partition,
- it could use more than one processing unit.
Entitled capacity is the amount you're guaranteed to get. So you may not want someone to increase the guaranteed amount for the LPAR to the maximum physical processors, because it's guaranteed to get that. So if there other LPARs in the same pool, or on the same system, that are also using shared processors, then they may actually need more processor. Because the entitled capacity of this partition is so high - they're both busy. It only comes into play when there's contention.What about the weight?
Janel also covered the meaning of the weight on the processor tab. I was glad she did, as I typically leave my LPARs at the default of 128, except for the VIO servers which I set to 192. It was helpful to hear what Janel had to say:
You really want to control the excess processor use with uncapped weight, because then you're letting the hypervisor choose.
Even if you set the entitled capacity high, if it doesn't use it, it gets seeded back. But if it is using it, it's going to take it all, and other LPARs that are also uncapped are not going to have access to that excess processor. So it's a difference between the administrator determining who gets to use more processor when we have contention (using DLPAR) vs. the hypervisor based on the uncapped weight, which is much more granular. Every 10 milliseconds it gets evaluated.
When we've got multiple partitions in a shared pool, and they're all in a position to use excess processor, then the priority is given according to the weight assignment.
At least one VP for every whole or part processing unit
VPs will show up in the OS to indicate to the OS how many physical processors it can use.
You have to have at least one VP for every whole or part of processing unit. For example, if you've got 1.2 processing units, you have to have at least two VPs.
How many Virtual Processors to assign?
How do you choose how many VPs you should assign to your partition? If
- you're using uncapped
- if the partition needs more processing units than it's currently assigned (typically the desired amount, but could be between the min and the desired), and
- the partition's really busy – e.g. 1.2 and it's maxed out,
- if there is more available in the pool, then if the partition is uncapped, it will be able to use up to the desired VPs. If there are 3 Vps in the pool, it will only be able to use up to three processors.
Rule of thumb for VPs
You could set the VPs for an uncapped partition to equal the number of processors in the shared pool.
Set the desired to the maximum physical processor that's available for the partition when you're using the uncapped. Entitled capacity is what you're guaranteed to get. You may not want someone to get that. The excess processor only comes into play when there's contention.
If the LPAR doesn't use the entitled capacity, it gets seeded back. If it is using it, then it's going to take it all. It's the difference between the administrator deciding how much processor a partition gets to the hypervisor, which assesses needs every 10 milliseconds.
Think of processing units as an allocation of processor time in 10 millisecond processing units. It's the guaranteed capacity which can be used if it's needed. If it's not needed, then it gets seeded back to the shared pool. If it is needed, and there's contention between other uncapped partitions, that's when the processor weight factor comes into play.
More on Setting VPs 37:30
Let's say we have a partition with 1.0 entitled capacity processing units. If it's uncapped, it can use more than its entitled capacity. If it's capped, it's never going to use more than one processor. Let's say there are four processors in the system and this partition's uncapped, and no other partitions are busy on the system, then we could make use of all four processors, if we've got a virtual processor setting of four. If we've only got a virtual processor setting of three, then we're only going to be able to use three processors, even if we've got another one that's free and we need it.
The Virtual Processor setting comes into play when it's larger than the entitled capacity. It comes into play for an uncapped partition that needs more capacity and more is available.
Once again, Joe Armstrong from the AIX Virtual User Group has done a great service to us by getting someone to present a topic that everyone has questions about. Janel had some excellent PowerPoint presentation materials on Partition Creation Settings. You can download the Replay of the webinar which is remarkably succinct and easy to follow.
If you wish to download other free webinars, or get advice of future ones, visit the AIX Virtual User Group wiki.