mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > Factoring

Reply
 
Thread Tools
Old 2008-02-18, 22:43   #12
FactorEyes
 
FactorEyes's Avatar
 
Oct 2006
vomit_frame_pointer

36010 Posts
Cool x86_64 ECM changes the weighting in this situation

On 64-bit machines, ECM runs over three times as fast it does in 32-bit, due to the GMP library's use of 64-bit*64-bit multiplication and 128-bit by 64-bit division (IIRC -- I haven't looked at the GMP assembler routines in a couple of years). This changes the weighting a bit, if you're lucky enough to have this problem.

So for x86_64-compiled ECM binaries, you can add 5 digits to your level of ECM cleanout.
FactorEyes is offline   Reply With Quote
Old 2008-02-19, 08:45   #13
henryzz
Just call me Henry
 
henryzz's Avatar
 
"David"
Sep 2007
Cambridge (GMT/BST)

2·33·109 Posts
Default

what r the disadvantages of going to 64bit
i have a Athalon 64 3800+ running 32-bit Vista Ultimate(never bother getting Ultimate it is twice as slow as the home versions)
is it worth me upgrading to 64bit
henryzz is offline   Reply With Quote
Old 2008-02-19, 11:36   #14
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

22×7×227 Posts
Default

Quote:
Originally Posted by henryzz View Post
what r the disadvantages of going to 64bit
i have a Athalon 64 3800+ running 32-bit Vista Ultimate(never bother getting Ultimate it is twice as slow as the home versions)
is it worth me upgrading to 64bit
Are you referring to GMP-ECM or Windows?
rogue is offline   Reply With Quote
Old 2008-02-19, 17:24   #15
henryzz
Just call me Henry
 
henryzz's Avatar
 
"David"
Sep 2007
Cambridge (GMT/BST)

10110111111102 Posts
Default

windows
henryzz is offline   Reply With Quote
Old 2008-02-19, 18:56   #16
FactorEyes
 
FactorEyes's Avatar
 
Oct 2006
vomit_frame_pointer

23·32·5 Posts
Default

64-bit XP Pro has few advantages over 32-bit, and some disadvantages. Some applications will run faster, a few will run more slowly, and most will see no difference. You'll be able to see more than 3.6G of RAM with the 64-bit version.

64-bit versions of Windows lack antivirus software and certain other things, although I have heard that this situation is improving.

As for the sort of programs we on this forum love to heat our processors (and homes) with, it will only benefit those programs with configure/make options that take advantage of the double-wide registers and other goodies. I run 32-bit XP pro and 64-bit Centos 5.1 (Red-Hat Enterprise clone), and here are my observations:
  • Pari-gp: No appreciable difference, but I don't use it for anything heavy
  • gnfs-lasieveXXXX (ggnfs): 15% slower on 64-bit, even when compiled for x86_64.
  • GMP-ECM: Around 3.2 times faster in 64-bit -- a huge advantage
  • msieve: No appreciable difference, but I haven't run any explicit tests, and I would bet that the square-root phase would run much faster in 64-bit.

This is a dual-boot situation, so processors, RAM, and motherboard are the same for both 32-bit XP and 64-bit Linux.

I might get 64-bit XP, but I prefer to do my compiling (and other, actual remunerative, non integer-obsessed work) in Linux, so there seems little point to it. You won't see the advantage unless you're prepared to recompile things for the 64-bit x86_64 instruction set, and things like lattice sievers are all about the cache and not about raw multiplication speed.
FactorEyes is offline   Reply With Quote
Old 2008-02-19, 19:18   #17
henryzz
Just call me Henry
 
henryzz's Avatar
 
"David"
Sep 2007
Cambridge (GMT/BST)

588610 Posts
Default

Quote:
Originally Posted by FactorEyes View Post
64-bit XP Pro has few advantages over 32-bit, and some disadvantages. Some applications will run faster, a few will run more slowly, and most will see no difference. You'll be able to see more than 3.6G of RAM with the 64-bit version.

64-bit versions of Windows lack antivirus software and certain other things, although I have heard that this situation is improving.

As for the sort of programs we on this forum love to heat our processors (and homes) with, it will only benefit those programs with configure/make options that take advantage of the double-wide registers and other goodies. I run 32-bit XP pro and 64-bit Centos 5.1 (Red-Hat Enterprise clone), and here are my observations:
  • Pari-gp: No appreciable difference, but I don't use it for anything heavy
  • gnfs-lasieveXXXX (ggnfs): 15% slower on 64-bit, even when compiled for x86_64.
  • GMP-ECM: Around 3.2 times faster in 64-bit -- a huge advantage
  • msieve: No appreciable difference, but I haven't run any explicit tests, and I would bet that the square-root phase would run much faster in 64-bit.
This is a dual-boot situation, so processors, RAM, and motherboard are the same for both 32-bit XP and 64-bit Linux.

I might get 64-bit XP, but I prefer to do my compiling (and other, actual remunerative, non integer-obsessed work) in Linux, so there seems little point to it. You won't see the advantage unless you're prepared to recompile things for the 64-bit x86_64 instruction set, and things like lattice sievers are all about the cache and not about raw multiplication speed.
thanks
henryzz is offline   Reply With Quote
Old 2008-02-19, 20:27   #18
xilman
Bamboozled!
 
xilman's Avatar
 
"π’‰Ίπ’ŒŒπ’‡·π’†·π’€­"
May 2003
Down not across

2·5,393 Posts
Default

Quote:
Originally Posted by FactorEyes View Post
gnfs-lasieveXXXX (ggnfs): 15% slower on 64-bit, even when compiled for x86_64.
I find that very surprising. When I added the amd-64 assembler routines to the Franke lattice siever the speed increased markedly. I don't have measurements to hand but seem to remember it doubling or more.

Admittedly, my experience isn't primarliy with ggnfs, but ggnfs is (I believe) built around the Franke siever.

Paul
xilman is offline   Reply With Quote
Old 2008-02-19, 20:40   #19
FactorEyes
 
FactorEyes's Avatar
 
Oct 2006
vomit_frame_pointer

23·32·5 Posts
Default

Quote:
Originally Posted by xilman View Post
I find that very surprising. When I added the amd-64 assembler routines to the Franke lattice siever the speed increased markedly. I don't have measurements to hand but seem to remember it doubling or more.

Admittedly, my experience isn't primarliy with ggnfs, but ggnfs is (I believe) built around the Franke siever.

Paul
This is encouraging.

I compiled ggnfs a few days ago with the x86_64 target, but I have not dug into the code to see what the build process does with this information. It could be that my system lacks the right assembler executable, or something like that.

Is your source the CWI code?

This might be worth a new thread on what to expect from a 64-bit system, and how to ensure you're getting it.

Last fiddled with by FactorEyes on 2008-02-19 at 21:01
FactorEyes is offline   Reply With Quote
Old 2008-02-19, 23:49   #20
frmky
 
frmky's Avatar
 
Jul 2003
So Cal

22×32×59 Posts
Default

Quote:
Originally Posted by xilman View Post
I find that very surprising. When I added the amd-64 assembler routines to the Franke lattice siever the speed increased markedly.
Are these AMD64 assembler routines publicly available? The version of the lattice sieve in GGNFS doesn't include them. As such, the 32-bit version, which has assembler routines, is about 15% faster than the 64-bit version without assembler support.

Greg
frmky is online now   Reply With Quote
Old 2008-02-20, 01:10   #21
jasonp
Tribal Bullet
 
jasonp's Avatar
 
Oct 2004

3×1,181 Posts
Default

Quote:
Originally Posted by frmky View Post
Are these AMD64 assembler routines publicly available? The version of the lattice sieve in GGNFS doesn't include them. As such, the 32-bit version, which has assembler routines, is about 15% faster than the 64-bit version without assembler support.
I vaguely remember Joppe Bos was working on integrating the 64-bit asm into the GGNFS lattice siever.
jasonp is offline   Reply With Quote
Old 2008-02-20, 01:41   #22
FactorEyes
 
FactorEyes's Avatar
 
Oct 2006
vomit_frame_pointer

16816 Posts
Default Worth looking into

If this is easy or moderately difficult, someone would have done it already, but this might merit a trip through the 32-bit lattice siever code to see where the asm is called, and see if any means of souping it up comes to mind.



I know enough about the Franke code to fear it, so I can only guess at the likelihood that this would be fruitful. Plus, you have to RTFM for the instructions that will do the best job, which, with these new jackrabbit processors, is not as clear as it used to be.
FactorEyes is offline   Reply With Quote
Reply

Thread Tools


All times are UTC. The time now is 15:38.


Fri Aug 6 15:38:49 UTC 2021 up 14 days, 10:07, 1 user, load averages: 2.60, 2.59, 2.72

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.