mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > Msieve

Reply
 
Thread Tools
Old 2010-02-16, 21:14   #155
Joshua2
 
Joshua2's Avatar
 
Sep 2004

13×41 Posts
Default

I got it to work by resetting my computer and not ever trying any other gpu activities like boinc or folding@home. I think it was some sort of weird interaction between things, even though before I had closed the other things.

Last fiddled with by Joshua2 on 2010-02-16 at 21:15
Joshua2 is offline   Reply With Quote
Old 2010-03-04, 00:51   #156
ixfd64
Bemusing Prompter
 
ixfd64's Avatar
 
"Danny"
Dec 2002
California

72·47 Posts
Default

Jason, are there any plans to add support for ATI GPUs in the future? I think it would be very useful.
ixfd64 is offline   Reply With Quote
Old 2010-03-04, 01:53   #157
jasonp
Tribal Bullet
 
jasonp's Avatar
 
Oct 2004

DC916 Posts
Default

With ATI boards I think there are two choices: either do all the CUDA work over again in ATI's pseudo-assembly language, or do all the CUDA work over again in OpenCL and hope that everyone's very immature middleware libraries can manage decent performance. Even though I think there are several people here who would love the result, I doubt I'd have the development time to make much headway. Besides, it's not like the sieving or linear algebra runs on a GPU right now :)
jasonp is offline   Reply With Quote
Old 2010-03-07, 12:43   #158
xilman
Bamboozled!
 
xilman's Avatar
 
"π’‰Ίπ’ŒŒπ’‡·π’†·π’€­"
May 2003
Down not across

10,243 Posts
Default Msieve, GPU and 64-bit Windows 7

Here's how I managed to get CUDA and msieve working on an Acer laptop running 64-bit Windows 7. It wasn't entirely trivial and the installation (probably) still isn't perfect. I hope this account may be of use to others, especially as it should hit Google within the next week or so.

The laptop is an Acer Aspire 5739G with moderately nice graphics --- a GT240M with 1GB of video RAM. Therein lies the first problem. According to nVIDIA (http://www.nvidia.com/object/cuda_gpus.html) the GT240M isn't CUDA-enabled. There didn't seem to be a good reason for this so I tried to install the CUDA-enabled driver anyway. No joy. The installer claimed there was no hardware supporting that driver.

Googling turned up http://forums.nvidia.com/index.php?s...=102548&st=120 which gave the clue required: download the latest driver from http://www.laptopvideo2go.com/ together with the modifed nvdm.inf file available there.

Installing the driver was a chore. After a couple of failed attempts I removed the Windows driver and rebooted into VGA mode. All the driver files had been unpacked to a memstick beforehand. Clicking on the setup.exe was successful and, after a reboot, the machine worked properly again.

Next step was to install the 64-bit CUDA toolkit and SDK from nVIDIA. There isn't a specifically named version for Win7 so I downloaded and installed the Vista versions. They seemed to work, in that the SDK examples gave sensible output.

Finally, I downloaded the msieve144_gpu binary given near the start of this thread. Despite being a 32-bit binary, it appears to work on a 64-bit OS when run under Brian's Python script. It is now finding polynomials for a c100 test number. If it finds something, I'll let it complete.

I couldn't find a 64-bit GPU-enable msieve binary. Does such a thing exist? I can't build one myself, yet, because my elderly copy of Visual Studio is 32-bit only.

The msieve binary I am running is rather chatty and is putting out a very large number of lines with the form "poly 0 p <digits> q <digits> coeff <digits>". Is this to be expected, or have I got a hold of a debugging version?

Paul
xilman is offline   Reply With Quote
Old 2010-03-07, 14:01   #159
jasonp
Tribal Bullet
 
jasonp's Avatar
 
Oct 2004

3,529 Posts
Default

Quote:
Originally Posted by xilman View Post
The msieve binary I am running is rather chatty and is putting out a very large number of lines with the form "poly 0 p <digits> q <digits> coeff <digits>". Is this to be expected, or have I got a hold of a debugging version?
No, it does that for everyone. I need to get a feel for the rate at which the GPU version finds hits, so they're all printed out.
jasonp is offline   Reply With Quote
Old 2010-03-08, 18:39   #160
xilman
Bamboozled!
 
xilman's Avatar
 
"π’‰Ίπ’ŒŒπ’‡·π’†·π’€­"
May 2003
Down not across

10,243 Posts
Default building on RHEL5

The stock trunk/Makefile fails to build on a RHEL5 system. Changing this
Code:
CFLAGS += -I"$(CUDA_INC_DIR)" -DHAVE_CUDA
into
Code:
CFLAGS += -I"$CUDA_INC_DIR" -DHAVE_CUDA
makes it work. That is, use the envvar rather than the Makefile variable with the same name.

Please someone check that my version works in other environments, especially Windows. If so, I suggest that the change be made in SVN.


Paul
xilman is offline   Reply With Quote
Old 2010-03-08, 20:03   #161
jasonp
Tribal Bullet
 
jasonp's Avatar
 
Oct 2004

352910 Posts
Default

Does CUDA define different environment variables in RHEL? If it's a conflict between the make variable and an environment variable we could just change the name of the make variable.

If it's the quotes that are the problem, this is kind of a catch-22; the windows environment variable is a windows path with backslashes, which will not work when gcc is called from make. So the quotes are needed.

I guess I can echo the environment variable and run sed to change backslashes into forward slashes.
jasonp is offline   Reply With Quote
Old 2010-03-08, 20:15   #162
xilman
Bamboozled!
 
xilman's Avatar
 
"π’‰Ίπ’ŒŒπ’‡·π’†·π’€­"
May 2003
Down not across

10,243 Posts
Default

Quote:
Originally Posted by jasonp View Post
Does CUDA define different environment variables in RHEL? If it's a conflict between the make variable and an environment variable we could just change the name of the make variable.

If it's the quotes that are the problem, this is kind of a catch-22; the windows environment variable is a windows path with backslashes, which will not work when gcc is called from make. So the quotes are needed.

I guess I can echo the environment variable and run sed to change backslashes into forward slashes.
CUDA doesn't define any variables by default. I defined those two myself, taking the hint from the comments in the Makefile.

The slash/backslash distinction doesn't appear to be an issue. The modified Makefile still has quotes in it.

Paul
xilman is offline   Reply With Quote
Old 2010-03-08, 20:18   #163
xilman
Bamboozled!
 
xilman's Avatar
 
"π’‰Ίπ’ŒŒπ’‡·π’†·π’€­"
May 2003
Down not across

10,243 Posts
Default

Quote:
Originally Posted by jasonp View Post
Does CUDA define different environment variables in RHEL? If it's a conflict between the make variable and an environment variable we could just change the name of the make variable.

If it's the quotes that are the problem, this is kind of a catch-22; the windows environment variable is a windows path with backslashes, which will not work when gcc is called from make. So the quotes are needed.

I guess I can echo the environment variable and run sed to change backslashes into forward slashes.
Does sed exist in Windows? (I know that such as Cygwin supply it).

Perhaps easier would be to require WIN=1 (or the like) to be given as an argument to make --- you could then do pretty much whatever you like thereafter.

Paul
xilman is offline   Reply With Quote
Old 2010-03-08, 22:55   #164
jasonp
Tribal Bullet
 
jasonp's Avatar
 
Oct 2004

1101110010012 Posts
Default

Windows doesn't have an equivalent to sed; both cygwin and minGW do though (actually minGW provides only development tools, and msys supplies actual user stuff like text utilities)
jasonp is offline   Reply With Quote
Old 2010-03-10, 13:26   #165
xilman
Bamboozled!
 
xilman's Avatar
 
"π’‰Ίπ’ŒŒπ’‡·π’†·π’€­"
May 2003
Down not across

10,243 Posts
Default Logorrhoea

I'm searching for GNFS polynomials for a C178 using a Tesla C1060, and it is making great progress. However, the program is less than 50 hours into a 300-hour run and the msieve.dat.p file is already 163 megabytes in size. The three largest Murphy_E scores are 7.4{02,77,78}e-14 and these are almost twice the smallest, which are 3.969e-14.

Disk space is plentiful, so I'm not particularly worried on that score. I'm just wondering if there is any easy way of reducing the amount of output in future. Perhaps msieve could retain the top 20 (say) polynomials found in the run so far and only output new ones if they enter somewhere in the top 20.

Would this be worth doing? If so, I may take a look at the code.

Paul
xilman is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
Compiling Msieve with GPU support LegionMammal978 Msieve 6 2017-02-09 04:28
5+ GPU support TheMawn GPU Computing 3 2014-07-13 02:31
Support AVX Unregistered Information & Answers 5 2011-07-05 17:12
Msieve with GNFS support R.D. Silverman Msieve 465 2010-01-11 20:59
Athlon64 support? JuanTutors Software 1 2004-06-04 02:46

All times are UTC. The time now is 06:14.

Thu Sep 24 06:14:18 UTC 2020 up 14 days, 3:25, 0 users, load averages: 1.20, 1.23, 1.28

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, 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.