have good VC++ 6.0 build of GMP 4.1; make it available?
Rev. Chris Korda
victimofleisure at gmail.com
Wed Apr 16 23:37:53 CEST 2008
It took me a while, but I have managed to create a fully-optimized static
library build of GMP 4.1.2 under VC++ 6.0. Do you think anyone might find
this useful? If so, I could make it available, e.g. by hosting it from my
website.
The project supports x86, P6, and Pentium 4 builds, with (almost) all the
assembler optimizations. A secondary project contains the entire test suite,
and all the tests pass. My informal benchmark results are enclosed below
(2.66 GHz Intel Core2, all times in seconds):
ASM pass1 pass2
---- ----- -----
none 173.6 174.3
x86 66.7 65.9
P6 60.0 61.0
P4 59.0 59.0
You might wonder why I did all this. Here's why. The only Windows builds I
found online were these:
1. Zilin Du's GMP for Windows page http://cs.nyu.edu/exact/core/gmp/
2. Brian Gladman's MPFR page
http://fp.gladman.plus.com/computing/gmp4win.htm
Du's project builds 4.1 correctly but without assembler optimizations. This
is a serious problem if performance is an issue. Gladman's project has the
assembler optimizations, but only works with .NET 2008 or 2005. I don't like
.NET, for various reasons, the most important of which is that .NET binaries
can can be significantly slower than their VC++ 6.0 equivalents.
My application only uses the mpf portion of GMP, and only does adds and
multiplies, at largish precision (e.g. 768 bits or more). I have found that
my application runs approximately 15% slower with Gladman's .NET
Pentium4/SSE build than with my VC++ 6.0 P6 build. This is enough of a
difference to keep me using VC++ 6.0 for the moment.
Gladman did the hardest part, i.e. translating the assembler files from AT&T
syntax to Intel syntax, but it was still a lot of work creating all the
projects and testing them, and I'd like to save others from having to do all
this work again needlessly. Unless they really want to... :)
Best regards,
Chris Korda
"The American economy's ultimate purpose is to produce more consumer goods."
-President Eisenhower
More information about the gmp-discuss
mailing list