Signoff On Dec 16, 2019 12:00 AM, IBM-MAIN automatic digest system <[email protected]> wrote:
There are 7 messages totaling 367 lines in this issue. Topics of the day: 1. How do I compare CPU times on two machines? (4) 2. ZOS 1.13 2.2 2.3 in the same sysplex (3) ---------------------------------------------------------------------- Date: Sun, 15 Dec 2019 08:01:58 -0600 From: Scott Chapman <[email protected]> Subject: Re: How do I compare CPU times on two machines? >> The numbers below (from IBM.com) do not seem to support what you are saying >> however: "if you're trying to convert CPU time between machines, the ratio >> of any of SUs, MSUs, or PCI will be pretty much equally "fine"." The ratio >> of the PCI's of the two machines is about eight-to-one but they seem in >> practice to be *about* the same speed: that is, a job that uses about 1 CPU >> second on one seems to use about 1 CPU second on the other (certainly not >> eight times as much!). The SU/SEC ratio for the two machines is 40404/33333 >> which seems to more accurately reflect observed reality (although way less >> than perfectly! -- less perfectly than a guess of "oh, I guess they are >> about the same speed"). >> >> Processor #CP PCI MSU MSUps Low Average High >> 2817-730 30 23,929 2,855 2,370 49.54 42.75 37.96 >> >> Processor #CP PCI MSU Low Average High >> 2818-Z05 5 3,139 388 6.18 5.61 4.77 >> Sorry... I failed to mention that you have to use the Per CPU ratings. SU/sec is already on a per CPU basis, which is why that number seems more in line with what you expect. 23929 / 30 = 797.6 2855 / 30 = 95.1 3139 / 5 = 627.8 388 / 5 = 77.6 797.6 / 627.8 = 1.27 95.1 / 77.6 = 1.22 40404 / 33333 = 1.21 The PCI ratio is a bit farther off from the other two, but again, these are rough estimates and to that degree they're reasonably close. We're drawing with the fat crayons here, not fine drafting pens. But... I just realized you used the SU/sec from the 2818-Z04, not the Z05, which is 32258. 40404 / 32258 = 1.25 Which is pretty much in the middle of the other two ratios, so it all seems to match up as I'd expect now. Re. your "a job on one machine uses about 1 second of CPU and uses about 1 second of CPU on the other". If 1.00 is about 1.25 then, I think all is as one might expect. But a 1 second job is relatively quick. And there's probably other work on the systems that could be influencing both. For example, the larger machine may have more work running that's having a larger negative impact on the test job running on that machine, so it could actually consume more CPU time than the test job running on the notionally slower machine if the slower machine is relatively idle when the test job runs. LPAR configurations can also play in here, sometimes significantly. Remember, your CPU time increases as your application has to go further into the memory hierarchy to find the data. (I.E. if the instructions/data weren't in L1 cache.) So on a busier system, other work (especially higher priority) work may be making it harder for a particular test job to keep it's data closer to the processor core. That's also why you'll see potentially significant variations between runs of the same exact job. That's why I always want to see multiple re-runs so I can understand the "normal" variation. (But one still needs to take into account the current system activity: "normal" variation will itself vary.) Nothing is simple... Scott Chapman ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ------------------------------ Date: Sun, 15 Dec 2019 21:01:53 +0000 From: Seymour J Metz <[email protected]> Subject: Re: How do I compare CPU times on two machines? To a first approximation, run the same job on both and compare. IBM has a synthetic benchmark, and you can use those numbers as long as you understand that your workload may not give the same ratios as IBM's. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 ________________________________________ From: IBM Mainframe Discussion List <[email protected]> on behalf of Charles Mills <[email protected]> Sent: Friday, December 13, 2019 3:26 PM To: [email protected] Subject: How do I compare CPU times on two machines? I know this is a pretty basic question. I can research it but I am afraid that if I miss one detail I could be off by an order of magnitude. How do I compare CPU seconds on two different machines -- in this case a z196 model M49 and a z114 model M10? This is not like a huge purchase decision benchmark or anything like that. It's just a very simple Job X consumed m CPU seconds on the z196, and Job Y consumed n CPU seconds on the z114 -- how do I compare those two numbers? Thanks much, Charles ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ------------------------------ Date: Sun, 15 Dec 2019 17:59:01 -0600 From: R Hey <[email protected]> Subject: ZOS 1.13 2.2 2.3 in the same sysplex Hi, Has anybody used these 3 versions of zos in 1 sysplex (CF, SMS, HSM, Ucats, etc ...) ? Cheers, Reza ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ------------------------------ Date: Mon, 16 Dec 2019 00:55:04 +0000 From: Mark Jacobs <[email protected]> Subject: Re: ZOS 1.13 2.2 2.3 in the same sysplex I assume you know that it's not a supported configuration. z/OS 1.13 is also out of support and there's no compatibility maintenance with z/OS 2.3 available (AFAIK). Mark Jacobs Sent from ProtonMail, Swiss-based encrypted email. GPG Public Key - https://api.protonmail.ch/pks/lookup?op=get&[email protected] ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐ On Sunday, December 15, 2019 6:59 PM, R Hey <[email protected]> wrote: > Hi, > Has anybody used these 3 versions of zos in 1 sysplex (CF, SMS, HSM, Ucats, > etc ...) ? > Cheers, > Reza > > ------------------------------------------------------------------------------------------------------------ > > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to [email protected] with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ------------------------------ Date: Sun, 15 Dec 2019 19:06:17 -0600 From: R Hey <[email protected]> Subject: Re: ZOS 1.13 2.2 2.3 in the same sysplex Thanks Mark, Yes, I know. My client is forced to use zos 1.13 for a while, they use it with with zos 2.2 in the same plex, which needs to be moved to zos 2.3. Cheers ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ------------------------------ Date: Sun, 15 Dec 2019 17:45:03 -0800 From: Charles Mills <[email protected]> Subject: Re: How do I compare CPU times on two machines? Yeah, that's where I am heading. At the moment I don't have the same data on both machines. I thought this question was going to be easy. Charles -----Original Message----- From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of Seymour J Metz Sent: Sunday, December 15, 2019 1:02 PM To: [email protected] Subject: Re: How do I compare CPU times on two machines? To a first approximation, run the same job on both and compare. IBM has a synthetic benchmark, and you can use those numbers as long as you understand that your workload may not give the same ratios as IBM's. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ------------------------------ Date: Sun, 15 Dec 2019 18:00:02 -0800 From: Charles Mills <[email protected]> Subject: Re: How do I compare CPU times on two machines? Scott, thanks again. With that elaboration of your explanation, and the correction of my copying the wrong line from IBM, I think we have the answer. > a 1 second job is relatively quick. Yeah, I just used 1 because it is simple. The real CPU times involved are from about 4 to 400 CPU seconds. (A range of jobs; NOT a 100:1 ratio between machines for the same job.) > your CPU time increases as your application has to go further into the memory > hierarchy to find the data I know that well! I've posted this story before, but here it goes again. I was until recently responsible for an event-driven application. I had a test driver that would queue "events" from a file at a specified pace, for regression testing, benchmarking, and so forth. When I drove the application very slowly -- say 10 events per second -- it used roughly TWICE as much CPU time per event as when I pushed events through it as fast as it could process them, which was several hundred times that fast. My theory -- did not have the means to confirm -- was that when I drove it hard it "owned" the cache lines. When I started in this business it was an axiom that for a given workload wall clock times were variable but CPU times were deterministic. That obviously no longer holds. > Nothing is simple... Or as the Db2 folks like to say, "it depends." I do think I now have my arms around this question. Thanks all, Charles -----Original Message----- From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of Scott Chapman Sent: Sunday, December 15, 2019 6:02 AM To: [email protected] Subject: Re: How do I compare CPU times on two machines? >> The numbers below (from IBM.com) do not seem to support what you are saying >> however: "if you're trying to convert CPU time between machines, the ratio >> of any of SUs, MSUs, or PCI will be pretty much equally "fine"." The ratio >> of the PCI's of the two machines is about eight-to-one but they seem in >> practice to be *about* the same speed: that is, a job that uses about 1 CPU >> second on one seems to use about 1 CPU second on the other (certainly not >> eight times as much!). The SU/SEC ratio for the two machines is 40404/33333 >> which seems to more accurately reflect observed reality (although way less >> than perfectly! -- less perfectly than a guess of "oh, I guess they are >> about the same speed"). >> >> Processor #CP PCI MSU MSUps Low Average High >> 2817-730 30 23,929 2,855 2,370 49.54 42.75 37.96 >> >> Processor #CP PCI MSU Low Average High >> 2818-Z05 5 3,139 388 6.18 5.61 4.77 >> Sorry... I failed to mention that you have to use the Per CPU ratings. SU/sec is already on a per CPU basis, which is why that number seems more in line with what you expect. 23929 / 30 = 797.6 2855 / 30 = 95.1 3139 / 5 = 627.8 388 / 5 = 77.6 797.6 / 627.8 = 1.27 95.1 / 77.6 = 1.22 40404 / 33333 = 1.21 The PCI ratio is a bit farther off from the other two, but again, these are rough estimates and to that degree they're reasonably close. We're drawing with the fat crayons here, not fine drafting pens. But... I just realized you used the SU/sec from the 2818-Z04, not the Z05, which is 32258. 40404 / 32258 = 1.25 Which is pretty much in the middle of the other two ratios, so it all seems to match up as I'd expect now. Re. your "a job on one machine uses about 1 second of CPU and uses about 1 second of CPU on the other". If 1.00 is about 1.25 then, I think all is as one might expect. But a 1 second job is relatively quick. And there's probably other work on the systems that could be influencing both. For example, the larger machine may have more work running that's having a larger negative impact on the test job running on that machine, so it could actually consume more CPU time than the test job running on the notionally slower machine if the slower machine is relatively idle when the test job runs. LPAR configurations can also play in here, sometimes significantly. Remember, your CPU time increases as your application has to go further into the memory hierarchy to find the data. (I.E. if the instructions/data weren't in L1 cache.) So on a busier system, other work (especially higher priority) work may be making it harder for a particular test job to keep it's data closer to the processor core. That's also why you'll see potentially significant variations between runs of the same exact job. That's why I always want to see multiple re-runs so I can understand the "normal" variation. (But one still needs to take into account the current system activity: "normal" variation will itself vary.) Nothing is simple... ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ------------------------------ End of IBM-MAIN Digest - 14 Dec 2019 to 15 Dec 2019 (#2019-346) *************************************************************** ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
