mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > Msieve

Reply
 
Thread Tools
Old 2016-01-02, 12:59   #34
ATH
Einyen
 
ATH's Avatar
 
Dec 2003
Denmark

35·13 Posts
Default

Here are the Msieve svn988 I compiled a few days ago without CUDA support (before I figured out how to):

msieve-svn988-nogpu-haswell.zip
msieve-svn988-nogpu-sandybridge.zip
msieve-svn988-nogpu-core2.zip
ATH is offline   Reply With Quote
Old 2016-01-02, 20:46   #35
wombatman
I moo ablest echo power!
 
wombatman's Avatar
 
May 2013

29·61 Posts
Default This is embarrassing...

I'm trying to compile MSieve on Ubuntu 14.04 using the following (after doing make clean):

Code:
make all ECM=1 CUDA=1
But it's throwing errors related to omp_get_thread_limit and other "omp" related functions. Is it trying to compile with MPI or am I forgetting something else?
wombatman is online now   Reply With Quote
Old 2016-01-02, 23:55   #36
jasonp
Tribal Bullet
 
jasonp's Avatar
 
Oct 2004

3,541 Posts
Default

Something in the compile chain wants OpenMP (probably GMP-ECM). Try adding -lomp to the link line (there will probably be more dependencies) or compiling with -mopenmp.

Last fiddled with by jasonp on 2016-01-02 at 23:59
jasonp is offline   Reply With Quote
Old 2016-01-03, 03:53   #37
wombatman
I moo ablest echo power!
 
wombatman's Avatar
 
May 2013

29·61 Posts
Default

Will do. I did notice it was something with GMP-ECM and compiled it with just CUDA. That worked fine, but when I try and actually run msieve with a C134, I get a CUDA_ERROR_OUT_OF_MEMORY (4x) followed by CUDA_ERROR_DEINITIALIZED immediately as stage 1 of poly selection starts. This is with CUDA 5.5. Any idea what that might be from?
wombatman is online now   Reply With Quote
Old 2016-01-03, 07:54   #38
wombatman
I moo ablest echo power!
 
wombatman's Avatar
 
May 2013

6E916 Posts
Default

Might have figured it out. I, by way of habit from Windows, ran Msieve with "-t 16" at first, which is when the error popped up. When I took the "-t" parameter out completely, it seems to be fine. I'm going to let it run overnight and confirm that that's the case.
wombatman is online now   Reply With Quote
Old 2016-01-03, 13:30   #39
jasonp
Tribal Bullet
 
jasonp's Avatar
 
Oct 2004

DD516 Posts
Default

Yes, stage 1 of poly selection is multithreaded and needs a limit on the number of threads that make sense. I would never use more than 4, and beyond about C140 there's basically no difference in stage 1 throughput compared to one thread.
jasonp is offline   Reply With Quote
Old 2016-01-03, 15:01   #40
wombatman
I moo ablest echo power!
 
wombatman's Avatar
 
May 2013

33518 Posts
Default

Yeah, it's more that on Windows you can put something like 16, and it will work fine (or at least not throw any errors--maybe performance suffers).
wombatman is online now   Reply With Quote
Old 2016-01-04, 10:54   #41
Googulator
 
Dec 2015

2010 Posts
Default

The non-GPU version works fine, thanks.
Googulator is offline   Reply With Quote
Old 2016-01-04, 15:24   #42
jasonp
Tribal Bullet
 
jasonp's Avatar
 
Oct 2004

DD516 Posts
Default

Does anyone want to test SVN 991 with a CUDA toolkit > 5.5? This replaces the GPU sorting code with CUB and streamlines some of the GPU setup. 64-bit windows builds should compile with 'make all WIN=1 WIN64=1 CUDA=1 NO_ZLIB=1'.

Single-threaded and multithreaded runs work fine for me on a range of input sizes with the v6.5 toolkit. It would be nice if someone can also confirm that it builds and runs okay in linux.
jasonp is offline   Reply With Quote
Old 2016-01-04, 18:37   #43
ATH
Einyen
 
ATH's Avatar
 
Dec 2003
Denmark

35·13 Posts
Default

What about CUDA 7.0 and 7.5? Are they still not compatible?
ATH is offline   Reply With Quote
Old 2016-01-04, 19:29   #44
wombatman
I moo ablest echo power!
 
wombatman's Avatar
 
May 2013

29·61 Posts
Default

Working on building it with 7.0, but running into some issues (not with compilation, but immediate crash when run). I'm going to try a few things first.

Edit: Yeah, still an immediate crash when compiled in MSieve. I recall some sort of issue with crossing between 32-bit and 64-bit dlls or something. Also working on getting it compiled in VS2012, but I'm running into issues there with mpir.lib and libecm.lib throwing unresolved external symbol errors at the last step of linking.


Edit 2: Alright, everything compiled fine in VS2012 and seems to work fine (I can start it and watch poly numbers go screaming by on the screen for a few seconds before I stop it). I'll do more testing in a bit, but it looks like you have successfully updated Msieve! Thanks a ton for taking the time to do it.

Last fiddled with by wombatman on 2016-01-04 at 20:05
wombatman is online now   Reply With Quote
Reply



Similar Threads
Thread Thread Starter Forum Replies Last Post
Newer milestone thread Uncwilly Data 3421 2021-07-12 16:10
Help needed - M77 232 917 celebration build jbpace Hardware 19 2018-01-10 16:32
Performance of cuda-ecm on newer hardware? fivemack GMP-ECM 14 2015-02-12 20:10
Newer msieves are slow on Core i7 mklasson Msieve 9 2009-02-18 12:58
Use of large memory pages possible with newer linux kernels Dresdenboy Software 3 2003-12-08 14:47

All times are UTC. The time now is 01:22.


Sat Jul 17 01:22:00 UTC 2021 up 49 days, 23:09, 1 user, load averages: 0.99, 1.10, 1.21

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.