20120127, 21:27  #1 
Mar 2010
3·137 Posts 
ECM for CUDA GPUs in latest GMPECM ?
Greetings.
While working on gmpecm, I discovered a "gpu" folder inside latest svn. Can somebody shed some light on it? Is it a fullyworking gmpecm implementation ? Or partially gpuaccelerated ? Any info will do! 
20120127, 21:47  #2  
Bamboozled!
"๐บ๐๐ท๐ท๐ญ"
May 2003
Down not across
2^{4}×719 Posts 
Quote:
So far, it is Stage 1 only (as one should expect) and each bit in the product of prime powers up to B1 requires a separate kernel call. It would be easy enough to make the entire sequence of elliptic curve arithmetic operations a single kernel but not obviously a good idea (think about it). The code currently uses fixed kilobit arithmetic and so is limited to factoring integers somewhat under that size. One of the areas I may be able to help is to add flexibility in that regard. Another is improve the underlying arithmetic primitives. A third is to reduce the (presently extortionate IMO) amount of cpu time used by busywaiting for the kernels to complete. Paul 

20120128, 06:55  #3 
Mar 2010
3×137 Posts 
Oh, alright.
It cant substitute gmpecm yet. Stage2 on GPUs is not very possible(except Teslas) because it requires a lot of RAM ? 
20120210, 15:35  #4 
Bamboozled!
"๐บ๐๐ท๐ท๐ญ"
May 2003
Down not across
2^{4}·719 Posts 
Actually it can. I just found my first factor with gpuecm
Code:
Resuming ECM residue saved by pcl@anubis.home.brnikat.com with GPUECM 0.1 Input number is 27199999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 (275 digits) Using B1=1100000000, B2=110000000776278396540, polynomial Dickson(30), A=112777948379516601562499999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999998 Step 1 took 0ms Step 2 took 176954ms ********** Factor found in step 2: 7219650603145651593481420276356225303436099 Found probable prime factor of 43 digits: 7219650603145651593481420276356225303436099 Composite cofactor 3767495339476507669490528975999036413199084363632138583182977316467718682572689799651214383863597597569613063674073098348731470273762390945944125050829513627232967008803673015815350396060271580465332444072090424114938478394067646101 has 232 digits Each stage one took 70 seconds on a GTX460. The latest ECM takes 679 seconds per stage 1 on a single core of a 1090T clocked at 3264MHz, so the GPU version is close to 10 times faster in this situation. Paul Last fiddled with by xilman on 20120210 at 16:09 
20120210, 15:46  #5 
Dec 2009
Peine, Germany
331 Posts 
GPU ECM 0.1
Could anybody provide a (link to a) (Windows 64) binary for GPUECM 0.1?

20120210, 16:08  #6 
Bamboozled!
"๐บ๐๐ท๐ท๐ญ"
May 2003
Down not across
2^{4}·719 Posts 
Surprise is no longer adequate, and I'm forced to resort to astonishment
Code:
Using B1=1100000000, B2=110000000776278396540, polynomial Dickson(30), A=113233923912048339843749999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999998 Step 1 took 0ms Step 2 took 176408ms ********** Factor found in step 2: 2315784840580190375316972295830305082761 Found probable prime factor of 40 digits: 2315784840580190375316972295830305082761 Composite cofactor 11745478044145667127387304121681137574169838448099828222193156280305822325912582394902125137121744003039884215185197839759773264126893037178852537820600462333360764644042755609744438099938488940900666235577910910744169710591419476281159 has 236 digits If I was unlucky not to find the p43 earlier than this, given the amount of ECM work performed, I was especially unlucky not to find the p40. The candidate number, GW(10,272) had no previously known factors despite having had a complete t40 run through the ECMNET server here and clients around the world. The cofactor is now c193 so it's worth seeing whether the remaining curves will find anything. Paul 
20120210, 16:23  #7 
Bamboozled!
"๐บ๐๐ท๐ท๐ญ"
May 2003
Down not across
2^{4}·719 Posts 

20120210, 16:25  #8 
"Carlos Pinho"
Oct 2011
Milton Keynes, UK
2·2,539 Posts 

20120210, 16:56  #9 
Bamboozled!
"๐บ๐๐ท๐ท๐ญ"
May 2003
Down not across
2^{4}×719 Posts 
If you have Linux you can build from the SVN sources as easily as I can.
The process really is very straightforward and you'll end up with something which doesn't carry the risk of the Linux equivalent of DLLhell. If you really are not lazy(*) enough to build your own, I could make available the binary I use. No guarantees that it will work, or even run, on any other Linux system. It almost certainly won't work optimally unless you have exactly the same environment as me. Paul * Sometimes it's much better to do some work ahead of time to remove the need to do much more work later. That's true laziness. 
20120210, 21:30  #10 
Mar 2010
110011011_{2} Posts 
Windows binary wanted

20120211, 00:07  #11  
"Bob Silverman"
Nov 2003
North of Boston
16472_{8} Posts 
Quote:
Is the code specific to a particular GPU? How portable is it? 

Thread Tools  
Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
Running CUDA on nonNvidia GPUs  Rodrigo  GPU Computing  3  20160517 05:43 
Error in GMPECM 6.4.3 and latest svn  ATH  GMPECM  10  20120729 17:15 
latest SVN 1677  ATH  GMPECM  7  20120107 18:34 
Has anyone seen my latest treatise?  davieddy  Lounge  0  20110121 19:29 
Latest version?  [CZ]Pegas  Software  3  20020823 17:05 