performance comparisons?

Kelly F. Hickel

Dec 14, 2003

We've pretty much shifted (or are shifting) all our zlinux development
over to hercules, to spare the "real" hardware for z/os, one of the
issues that comes up is how to do performance testing. Is there any way
to compare numbers against real hardware, other than running the exact
same workload on real hardware and Hercules and looking at the numbers?
Any number would do, the MIPS counter on the herc console, uptime output
from zlinux, cpu seconds inside zlinux, etc. I just need some number
that I can point to and say "multiply this by the square root of
negative one, multiply by infinity, divide by zero, and it's the same as
the MP3000 number".....



Has anyone done real comparisons???



-Kelly



[Non-text portions of this message have been removed]

2:27 am


Re: performance comparisons

Jay Maynard

Dec 14, 2003

On Sat, Dec 13, 2003 at 08:27:03PM -0600, Kelly F. Hickel wrote:
> We've pretty much shifted (or are shifting) all our zlinux development
> over to hercules, to spare the "real" hardware for z/os, one of the
> issues that comes up is how to do performance testing. Is there any way
> to compare numbers against real hardware, other than running the exact
> same workload on real hardware and Hercules and looking at the numbers?
> Any number would do, the MIPS counter on the herc console, uptime output
> from zlinux, cpu seconds inside zlinux, etc. I just need some number
> that I can point to and say "multiply this by the square root of
> negative one, multiply by infinity, divide by zero, and it's the same as
> the MP3000 number".....

This is a very interesting question, but I suspect the answer is that there
is no direct comparison. I would expect that it is heavily dependent on
instruction mix and, to a slightly lesser extent, I/O load. In particular, I
doubt strongly there's any relation between the relative execution times of
the various instructions in Hercules, as compared to a real system; while
there's one factor for RX instructions, for example, there may well be a
different one for SS, not to mention different instructions within each
group.

In any case, the only way to find this out is to run real workloads on real
hardware and Hercules, and compare. While it will vary widely between
instruction mixes, it may well be consistent for a specific kind of
application; while you'll have to run the comparison once, I suspect you
won't have to do it every time we make a change to Hercules unless we do
something drastic to the basic instruction execution logic - which we try to
avoid unless there's a good reason.

3:51 am


RE: performance comparisons?

Kelly F. Hickel

Dec 14, 2003

I guess part of the question would be, how much can I depend on CPU seconds. Do
the emulated instructions have similar (in proportion, not in absolute time)
"enough" timings as the real hardware, that cpu seconds will actually mean
anyting?

-Kelly

-----Original Message-----
From: Jay Maynard [mailto:jmaynard@...]
Sent: Sat 12/13/2003 9:51 PM
To: hercules-390@yahoogroups.com
Cc:
Subject: Re: [hercules-390] performance comparisons?


On Sat, Dec 13, 2003 at 08:27:03PM -0600, Kelly F. Hickel wrote:
> We've pretty much shifted (or are shifting) all our zlinux development
> over to hercules, to spare the "real" hardware for z/os, one of the
> issues that comes up is how to do performance testing. Is there any way
> to compare numbers against real hardware, other than running the exact
> same workload on real hardware and Hercules and looking at the numbers?
> Any number would do, the MIPS counter on the herc console, uptime output
> from zlinux, cpu seconds inside zlinux, etc. I just need some number
> that I can point to and say "multiply this by the square root of
> negative one, multiply by infinity, divide by zero, and it's the same as
> the MP3000 number".....

This is a very interesting question, but I suspect the answer is that there
is no direct comparison. I would expect that it is heavily dependent on
instruction mix and, to a slightly lesser extent, I/O load. In particular, I
doubt strongly there's any relation between the relative execution times of
the various instructions in Hercules, as compared to a real system; while
there's one factor for RX instructions, for example, there may well be a
different one for SS, not to mention different instructions within each
group.

In any case, the only way to find this out is to run real workloads on real
hardware and Hercules, and compare. While it will vary widely between
instruction mixes, it may well be consistent for a specific kind of
application; while you'll have to run the comparison once, I suspect you
won't have to do it every time we make a change to Hercules unless we do
something drastic to the basic instruction execution logic - which we try to
avoid unless there's a good reason.


Yahoo! Groups Sponsor
ADVERTISEMENT
click here
<http://rd.yahoo.com/SIG=12cleuue8/M=267637.4116730.5333196.1261774/D=egroupweb/\
S=1707281942:HM/EXP=1071460302/A=1853618/R=0/*http://www.netflix.com/Default?mqs\
o=60178338&partid=4116730>

<http://us.adserver.yahoo.com/l?M=267637.4116730.5333196.1261774/D=egroupmail/S=\
:HM/A=1853618/rand=846579393>

Community email addresses:
Post message: hercules-390@yahoogroups.com
Subscribe: hercules-390-subscribe@yahoogroups.com
Unsubscribe: hercules-390-unsubscribe@yahoogroups.com
List owner: hercules-390-owner@yahoogroups.com

Files and archives at:
http://groups.yahoo.com/group/hercules-390

Get the latest version of Hercules from:
http://www.conmicro.cx/hercules

Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service
<http://docs.yahoo.com/info/terms/> .

4:08 am


zArch Performance

tsagoth

Dec 15, 2003

I can't find it now of course, but I recall reading somewhere that
Hercules' current zArch performance is hampered by having to emulate
64 bit registers with the pc's 32 bit registers. Is this always going
to be the case, as in Hercules is built using assumptions like
integers are 32 bits ? Or will zArch performance automatically
improve if a 64 bit processor and appropriate os/compiler are
used ?

8:00 pm


Re: zArch Performance

Jay Maynard

Dec 15, 2003

On Mon, Dec 15, 2003 at 08:00:58PM -0000, tsagoth wrote:
> I can't find it now of course, but I recall reading somewhere that
> Hercules' current zArch performance is hampered by having to emulate
> 64 bit registers with the pc's 32 bit registers. Is this always going
> to be the case, as in Hercules is built using assumptions like
> integers are 32 bits ? Or will zArch performance automatically
> improve if a 64 bit processor and appropriate os/compiler are
> used ?

This is something I'd love to know.

Hercules has no wired-in assumptions about the host architecture. (At least,
it had better not have, and if it does, that's a bug that needs to be
fixed.) I would expect that the system's performance in 64-bit mode would be
much better on a 64-bit host than on a 32-bit host, but don't have an
UltraSPARC or PowerPC G5 or Opteron handy to test head-to-head on the same
architecture. (No, I don't count Itanium in this category: the 64-bit and
32-bit architectures are quite different.)

8:07 pm


Re: zArch Performance

Greg Smith

Dec 19, 2003

tsagoth wrote:
> I can't find it now of course, but I recall reading somewhere that
> Hercules' current zArch performance is hampered by having to emulate
> 64 bit registers with the pc's 32 bit registers. Is this always going
> to be the case, as in Hercules is built using assumptions like
> integers are 32 bits ? Or will zArch performance automatically
> improve if a 64 bit processor and appropriate os/compiler are
> used ?

We should not have any assumptions that int is 32 bits. The problem
is that it basically takes twice as many instructions to do 64 bit
arithmetic on a 32 bit machine than it would on a 64 bit machine.

Other emulated 64 bit fields in zArch mode (other the regs) include
virtual storage addresses and real/absolute addresses.

The latter has got me thinking. We emulate real storage in host's
virtual storage. As I understand, ia32 virtual storage cannot exceed
4G (32 bits)... however you might be able to have more than 4G real
storage (depending on your hardware I guess).

If this is the case, then zArch real addresses will only use 32 bits
so we could do 32 bit arithmetic with real addresses. Of course
real addresses in emulated storage will need to remain 64 bits.

Greg

2:37 am


Re: zArch Performance

tsagoth

Dec 19, 2003

--- In hercules-390@yahoogroups.com, Greg Smith <gsmith@n...> wrote:
>
> We should not have any assumptions that int is 32 bits. The problem
> is that it basically takes twice as many instructions to do 64 bit
> arithmetic on a 32 bit machine than it would on a 64 bit machine.
>

Yes, I knew that much, but what I wasn't sure about was if, due to
pc's only having 32 bit registers, Herc had been written with that in
mind. My reason for asking was that, having some ideas in mind, if
zArch was always going to be a dog, relatively speaking, then I might
stick with only using esa/390 mode. Since it's not the case that
Hercules is stuck on the intel only having 32 bit regs, I would
imagine that at some point in the future, zArch performance will take
a big jump, given 64 bit hardware underneath.

4:15 am


Re: zArch Performance

peter_flass@...

Dec 19, 2003

--- In hercules-390@yahoogroups.com, "tsagoth" <williaj@s...> wrote:
> Since it's not the case that
> Hercules is stuck on the intel only having 32 bit regs, I would
> imagine that at some point in the future, zArch performance will take
> a big jump, given 64 bit hardware underneath.

Is anybody running Herc on a 64-bit PowerPC or Alpha?

1:24 pm


Re: zArch Performance

Jay Maynard

Dec 19, 2003

On Fri, Dec 19, 2003 at 01:24:48PM -0000, peter_flass@... wrote:
> --- In hercules-390@yahoogroups.com, "tsagoth" <williaj@s...> wrote:
> > Since it's not the case that
> > Hercules is stuck on the intel only having 32 bit regs, I would
> > imagine that at some point in the future, zArch performance will take
> > a big jump, given 64 bit hardware underneath.
> Is anybody running Herc on a 64-bit PowerPC or Alpha?

I've run it in the past on an Alpha; more recently, there were reports of
problems, but I've been unable to test (since the Alpha is too busy being
www.conmicro.cx to run Hercules on). I'm getting a couple more Alphas, and
one will be a Linux box - and I'll get Hercules running on it again when I
do. There is nothing in Hercules that prevents it from running on 64-bit
architectures inherently.

1:34 pm


Copyright 2003