Path: utzoo!attcan!uunet!samsung!munnari.oz.au!goanna!ok From: ok@goanna.cs.rmit.oz.au (Richard A. O'Keefe) Newsgroups: comp.arch Subject: Re: int x int -> long for * (or is it 32x32->64) Keywords: arithmetic,arbitrary precision,benchmark,modular arithmetic Message-ID: <3762@goanna.cs.rmit.oz.au> Date: 15 Sep 90 08:55:58 GMT References: <3984@bingvaxu.cc.binghamton.edu> <41425@mips.mips.COM> <4015@bingvaxu.cc.binghamton.edu> Organization: Comp Sci, RMIT, Melbourne, Australia Lines: 26 I wrote User System User ratio Horsell (16 x 16 -> 16, C code) 311.2 1.9 1.36 slower Horsell (32 x 32 -> 32, C code) 228.8 2.6 My code (32 x 32 -> 64, assembly) 52.6 0.5 4.35 faster (times in seconds reported by /bin/time on an Encore Multimax) In article <4015@bingvaxu.cc.binghamton.edu>, kym@bingvaxu.cc.binghamton.edu (R. Kym Horsell) writes: > Could you please include a few more numbers in a followup post? Willingly. But which? Surely the one number 4.35 establishes the disputed fact: 32x32->64 multiplication (which C does not give you access to at all) can give you a worthwhile speedup for bignum multiplication. Two very important numbers for this newsgroup are -- what impact did inclusion of 32x32->64 multiplication have on the rest of the architecture? (It also has 64/32->32+32 division.) -- how many NS32532 programs are actually likely to benefit from this instruction? My answers are "no idea" and "dunno, but probably very few, because the only HLL I've got that uses the instruction is T." -- Heuer's Law: Any feature is a bug unless it can be turned off.