SMT Vocabulary Tips

Last revised: 2021-01-20, BKW

In the pre-SMT days we had all kinds of words we would use to talk about "a CPU". We would use processor and engine interchangeably. We would talk about an LPAR being a four-way. We would use IFL, CP, zIIP, zAAP, and ICF as nouns. And we would talk about utilization without needing to be very clear about what we meant. We could usually get away with our slang without confusing anyone.

With SMT we now have the notions of cores and processors. Cores contain processors: sometimes one, sometimes two. Because of this distinction we now need to be very careful about how we talk to one another. Here are some guidelines.

  • The machine is equipped with physical cores. Not engines, not processors, not CPUs, not IFLs, not CPs.

  • A logical partition, sometimes called an LPAR, is equipped with logical cores. Not engines, not processors, not CPUs, not CPs, not IFLs.

  • Cores, whether physical or logical, come in different types: CP, IFL, and so on. Those type-words are always adjectives: a physical IFL core, a logical CP core, and the like. No longer are the type-words ever nouns: an IFL, two CPs, and three zIIPs are now phrases to be avoided.

  • On the Support Element's LPAR activation profile configuration window, there is a choice called Processors, but be assured what you are defining there are the numbers and types of logical cores that should be present in the LPAR.

  • No longer can we use the word way to talk about the equippage of the LPAR. If I say the LPAR is a four-way, do I mean it has four logical cores, or do I mean it has four logical processors? Rather, we now should say it is a four-core LPAR, and then we can say whether it is running non-SMT, or SMT-1, or SMT-2.

  • Logical cores and physical cores have a percent-busy metric called core utilization. For a logical core, this is the percent of time the logical core is dispatched on a physical core. For a physical core, this is the percent of time the physical core has a logical core dispatched upon it. FCX126 LPAR, FCX299 PUCFGLOG, FCX302 PHYSLOG, and FCX306 LSHARACT depict core utilization.

  • Within a given scope (physical or logical) and type (IFL, etc.), we can add up the individual cores' core utilizations to get a total core utilization for the type. For example, we can say that the physical IFL core pool has a total core utilization of 325%. But note that we never add up these values cross-type.

  • In a similar way, a physical type-pool or an LPAR's logical cores of a type have an associated core capacity. This ranges from 0% up to N*100%, where N is the number of cores. And we never add up these values cross-type.

  • Contained within a core, either physical or logical, are instruction execution units called processors. Physical cores contain physical processors. Logical cores contain logical processors.

  • On z/VM,
    1. If the core-type is IFL there can be either one or two processors contained in the core, depending upon the SMT level: non-SMT and SMT-1 configurations have one processor in the core, but SMT-2 configurations have two processors in the core.
    2. All other core-types always have one processor in the core, regardless of the SMT level.
    You will stay out of vocabulary trouble if you think of the above points as being true for both physical cores and logical cores.

  • Logical processors have a percent-busy metric called processor utilization. This is the percent of elapsed time the processor has a non-wait PSW loaded, just as it always has been. Processor utilization shows up in PerfKit on FCX225 SYSSUMLG, FCX100 CPU, FCX101 REDISP, FCX144 PROCLOG, and FCX304 PRCLOG.

  • All of the following terms are synonyms for processor utilization: processor busy, processor load, CPU utilization, CPU load, and CPU busy.

  • Used alone, the term percent busy is ambiguous. We don't know whether we're talking about a core, or a processor, or an LPAR, or a CEC. If possible, avoid the phrase, unless you make it very clear what exactly you mean. Logical processor 6 is 35% busy is surely talking about processor utilization. System GDLVM7 is 81% busy is very unclear. Core busy? Processor busy? Percent of total system capacity? Who really knows.

  • Though in some minute way it exists, nobody talks about physical processor utilization in an SMT environment.

  • Within a given LPAR and type (IFL, etc.), we can add up the individual logical processors' processor utilizations to get a total processor utilization for the type. For example, we can say that the logical IFL processors of our LPAR are 325% busy. But note that we never add up these values cross-type.

  • In a similar way, an LPAR's logical processors of a type have an associated processor capacity. This ranges from 0% up to N*100%, where N is the number of logical processors of the type. And we never add up these values cross-type.

  • On z/VM,
    1. Guests have virtual processors.
    2. z/VM dispatches guests' virtual processors on logical processors of the LPAR.
    3. Perfkit user-busy reports, such as FCX112 USER, report virtual processor utilization.

    Further, regarding SMT,

    1. z/VM always tells guests the SMT facility is absent, and so
    2. Guests always have virtual processors, never virtual cores.
    3. It is possible for virtual processors from two different guests to inhabit the two logical processors of an SMT-2 logical IFL core.

If you remain true to the above vocabulary rules, you will never confuse your conversation partner. And if he says his LPAR is a six-way with two CPs and four IFLs, ask him what he means, and then give him a link to this article :) .

For more information about how z/VM reports utilization, take a look at this article.