🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.arch
Article #21976

Re: Integer/Multiply/Divide on Sparc

#21976
From: Robert D. Silverman
Date: Fri, 05 Jan 1990 13:00
46 lines
2599 bytes
In article <28594@amdcad.AMD.COM> tim@amd.com (Tim Olson) writes:
:In article <34058@mips.mips.COM> mash@mips.COM (John Mashey) writes:
 
:| 	I'm always nervous about micro-level benchmarks.  Now, I hate to have
:| 	to defend SPARC :-), but I must: realistic integer benchmarks
:| 	that I know [like the SPEC ones] simply don't correlate with
:| 	the results claimed below, at least not very much.
:| 	The RISC machines are noticably faster on actual integer programs....
:
:The benchmarks over-emphasize integer modulus.  For example, the
 
Huh? I don't see multiple modulus operations in the loop below. I see ONE.
How can one modulus operation inside a loop "over-emphasize" integer
modulus?

:benchmark that reportedly tests register-integer variables looks like:
:
:/* benchreg - benchmark for  register  integers 
 
Some code deleted. It contains a loop with perhaps 20 arithmetic operations
inside it. Only 1 involves division (and/or remainder). Here's the loop contents:

:                for (c = 1; c <= 40; ++c)
:                        {
:                        a = a + b + c;
:                        b = a >> 1;
:                        a = b % 10;
:                        m[a] = a;
:                        b = m[a] - b - c;
:                        a = b == c;
:                        b = a | c;
:                        a = !b;
:                        b = a + c;
:                        a = b > c;
:                        }
:and spends roughly 75% of its time performing the "%" operation.
 
This is exactly my point! The fact that one operation takes 75% of the run
time for a loop with about 20 operations indicates how badly SPARC does
division. Most programs may not do a lot of division, but when a program
DOES require it, the performance of the SPARC is a joke.
-- 
Bob Silverman
#include <std.disclaimer>
Internet: bs@linus.mitre.org; UUCP: {decvax,philabs}!linus!bs
Mitre Corporation, Bedford, MA 01730
Technical Details
Message-ID: <85593@linus.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!sharkey!cfctech!teemc!ka3ovk!drilex!axiom!linus!bs
References: <158@csinc.UUCP> <787@stat.fsu.edu> <42701@lll-winken.LLNL.GOV> <788@stat.fsu.edu> <42737@lll-winken.LLNL.GOV> <KHB.90Jan2121328@chiba.kbierman@sun.com> <5842@ncar.ucar.edu> <34058@mips.mips.COM> <28594@amdcad.AMD.COM>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!sharkey!cfctech!teemc!ka3ovk!drilex!axiom!linus!bs
From: bs@linus.UUCP (Robert D. Silverman)
Newsgroups: comp.arch
Subject: Re: Integer/Multiply/Divide on Sparc
Message-ID: <85593@linus.UUCP>
Date: 5 Jan 90 13:00:47 GMT
References: <158@csinc.UUCP> <787@stat.fsu.edu> <42701@lll-winken.LLNL.GOV> <788@stat.fsu.edu> <42737@lll-winken.LLNL.GOV> <KHB.90Jan2121328@chiba.kbierman@sun.com> <5842@ncar.ucar.edu> <34058@mips.mips.COM> <28594@amdcad.AMD.COM>
Reply-To: bs@gauss.UUCP (Robert D. Silverman)
Organization: The MITRE Corporation, Bedford MA
Lines: 46