Post by A.M.Post by Mikhail TeterinHowever, to my knowledge, no "big iron" system has CPUs, which are
anywhere close to that in raw speed -- and assembler-optimizations don't
exist for them either :-(
You are making a fundamental mistake in your assumptions by
comparing apples to oranges. All the big iron systems use
RISC CPUs which cannot be compared to the Intel CPUs based
on their clock speed.
Wrong. I'm not comparing "clock speed". I'm comparing actual throughput
of "gzip -9", "gzip", and "gzip -1" (and zlib's "minigzip" with the same
options). Sybase's libcompress-plugin uses zlib (and foolishly links it in
statically, BTW)... minigzip and gzip use the same alghorithms and produce
the same files.
Your loyalty is commendable, but sadly misplaced. You have to accept the
facts: today's RISC CPUs are _slower_ than Intels and AMDs. (The "big iron"
vendors have recognized this long ago -- Sun would not have gone through
the trouble of porting Solaris to AMD64, if it weren't for this
realization. Similarly, HP would not have bothered with "Merced".)
Post by A.M.Also, these SMP systems are also multiuser so you need to
take into account what else is happening throughout the
system.
Using "time" (tcsh's built-in) and counting only the "utime" allows me to
ignore other users. Come on... You know this, and you should expect me to
know this too.
But no, the SPARC-system (the loser) was idle last night, when I did the
test. The Opteron-system (the winner) was busy compressing 3 incoming
backup streams, but time accounts for that...
Post by A.M.Post by Mikhail TeterinFor example, from my experiments just now, our very recent Sun box
(Sun-Fire-V440) with 1594MHz SPARCs can only gzip at 16.3Mb/second -- at
I wouldn't exactly call it new.
We just bought it...
Post by A.M.The V440 is classed as entry-level and has the UltraSPARC IIIi.
Oh, come one -- so the IVplus will be, gasp, 30% faster?.. :-)
Post by A.M.Post by Mikhail Teterinthe lowest level (-1). At level 6 (the default), the rate falls to
11.1Mb/s, and at 9 -- to the pathetic 3.7Mb/s (3 times slower, than
Opteron-244 helped by assembler-coding).
Er ... all machine code is assember based. I'm assuming you
mean its hand coded - which I find laughable. Only on Wintel
do people still do this.
First, my box uses AMD's Opterons. Second, it runs FreeBSD -- that alone
makes your "only on Wintel" factually wrong :-)
More importantly, hand-coding "hot" functions may be laughable to you, but
it improved performance here by about 20%. Sun's C-compiler may be much
better than GNU's and thus there may, indeed, be no point in
hand-optimizing zlib for SPARCs. But that's irrelevant -- because gzip will
*still* be about 2 times faster on a 3 year-old Opteron system, than on a 3
months-old SPARC system.
Post by A.M.You are also leaving out other details from the comparison. What's the
rest of the system like? Memory? Disk? Number of CPUs? Load? 64bit code or
32bit?
Memory, disk, number of CPUs, and load make no difference for a one-to-one
comparision, when "time" is used (and it always should be). As long as the
machine is not paging heavily, which it does not...
/usr/bin/gzip is 32-bit on Solaris and 64-bit on FreeBSD/amd64. You think, I
should build a 64-bit gzip from source and try again? How big of an
improvement do you expect? 10%?
[hold on]
Yes, indeed. Rebuilding gzip from source using the latest Sun compiler
(version 11) with ``-fast -xarch=v9b'' raises the throughput of "gzip -1"
from 16-17 to 17-18. I would seek more precision, if it mattered -- but it
does not, because Opteron's througput is about double that.
When compressing with -9, though, the 64-bit gzip _loses_ to the 32-bit
version on SPARC... Probably, because it is not hand-optimized.
For highest compression level (-9), the picture is even worse for Sparcs.
Compressing the same 524Mb piece of a Sybase "device" file takes 67.399u on
FreeBSD/amd64 (7.77Mb/sec) and 152.18u on Solaris/SPARC (3.44Mb/sec with
64-bit gzip, and 3.79Mb/s with the original 32-bit).
The "big iron" vendors have very stable OSes, good (fast I/O) chipsets, and
solid-built machines (mostly), but their CPUs are DOG FOOD -- and have been
for very long time. (Their user-space software tends to suck too, BTW, but
that's another topic).
Yours,
-mi