mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   GPU Computing (https://www.mersenneforum.org/forumdisplay.php?f=92)
-   -   CUDALucas (a.k.a. MaclucasFFTW/CUDA 2.3/CUFFTW) (https://www.mersenneforum.org/showthread.php?t=12576)

prime7989 2012-09-01 22:52

[QUOTE=ET_;309960]To help you, we need to know how you plan to work.
Are you going to look for a better algorithm, or just trying to optimise the existent one?
In the first case, there is no known CODED algorithm that actually compares to LL.
In the second case, you have no chance (as LaurV pointed out), because the kernel of LL algorithm is already coded into the library.

Finally, if you just want to exchange the Mersenne test with a Fermat test, be prepared to fail, because as soon as the test approaches F31, the program will burst into pieces for lack of physical memory...

Luigi[/QUOTE]

Dear Luigi,
Perhaps optimization might be a better choice of words. However since the GTX680 has only 2GIGB or RAM and the GTX660Ti max 3GB so the exponent of 2 i.e 2^n is as you say limited to 2^31. But if the kernel of the LL is in the CUDA library then what is passed to it? I wish to pass 2^2^n+1 to it with 2<=n<=31
Thank you

kladner 2012-09-01 23:45

CUDALucas on GTX 570
 
[QUOTE=flashjh;309745]Have you switched to the updated 2.04 beta? Have you had any file locking problems with the new one?[/QUOTE]

This was the best quote I could use to link into my current situation.

I decided, foolishly or otherwise, to swap the work being done by the two GPUs. I wanted to see what the GTX 570 would do with CL. Also, giving mfaktc back to the 460 would free at least one CPU core for P-1. After some effort I got two instances of mfaktc running on the 460.

However, CL on the 570 still eludes me. I did some searching on the file lock situation, and I don't think that is what is happening. I think I have all the latest versions from Source Forge, as well as the libraries. There have been some different results. The one I've captured and is repeatable ATM goes through the FFT length tests about 20 times and ends with[CODE]CUDALucas.cu(159) : cufftSafeCall() CUFFT error 6: CUFFT_EXEC_FAILED[/CODE]This happens with CUDALucas-2.04-Beta-4.0-sm_20-x64 and with CUDALucas-2.04-Beta-3.2-sm_13-x64. I have removed check files between tests. I have never seen a lock file in the CUDALucas folder.

flashjh 2012-09-02 01:48

[QUOTE=kladner;309986]However, CL on the 570 still eludes me.[/QUOTE]
Ok, I was able to duplicate this error. I don't know if this is the only way to cause this error, but it's worth a shot:

Check your CUDALucas.ini file for a set FFT length. If it has one, set it to zero and try again. Or, if you're specifying a FFT length, make sure it's not too large. I would recommend using a clean .ini file from SourceForge.

If this doesn't help, please run the CUDALucas like this:

CUDALucas.exe > output.txt and post the .txt file so we can see the output.

Jerry

kladner 2012-09-02 02:00

1 Attachment(s)
Thanks, Jerry. I will get on the tests you suggest. I can say that FFT is set to 0 in the ini. I'll try with a clean ini (excepting Device=).

EDIT: Here are some results.[CODE]E:\CUDA>CUDALucas-2.04-Beta-3.2-sm_13-x64 > output.txt
mkdir: cannot create directory `savefiles': File exists
CUDALucas.cu(159) : cufftSafeCall() CUFFT error 6: CUFFT_EXEC_FAILED[/CODE]Output.txt is attached.

EDIT2: I did set Interactive, CheckRoundoffAllIterations, and SaveAllCheckpoints=1. The Device happened to be 0.

kladner 2012-09-02 02:52

second test, 4.0-sm20
 
Here's another run.
[CODE]E:\CUDA>CUDALucas-2.04-Beta-4.0-sm_20-x64 > output.txt
mkdir: cannot create directory `savefiles': File exists
CUDALucas.cu(159) : cufftSafeCall() CUFFT error 6: CUFFT_EXEC_FAILED

output.txt:

Starting M46069867 fft length = 2304K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 2304K
Starting M46069867 fft length = 2400K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 2400K
Starting M46069867 fft length = 2560K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 2560K
Starting M46069867 fft length = 2880K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 2880K
Starting M46069867 fft length = 3072K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 3072K
Starting M46069867 fft length = 3200K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 3200K
Starting M46069867 fft length = 3456K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 3456K
Starting M46069867 fft length = 3840K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 48 < 1000 && err = 0.50000 >= 0.35, increasing n from 3840K
Starting M46069867 fft length = 4000K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 4000K
Starting M46069867 fft length = 4096K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 4096K
Starting M46069867 fft length = 4608K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.49933 >= 0.35, increasing n from 4608K
Starting M46069867 fft length = 4800K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.49998 >= 0.35, increasing n from 4800K
Starting M46069867 fft length = 5120K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 5120K
Starting M46069867 fft length = 5760K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 5760K
Starting M46069867 fft length = 6144K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 6144K
Starting M46069867 fft length = 6400K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 6400K
Starting M46069867 fft length = 6912K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 6912K
Starting M46069867 fft length = 7680K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 7680K
Starting M46069867 fft length = 8000K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 8000K
Starting M46069867 fft length = 8192K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.

[/CODE]

Dubslow 2012-09-02 02:57

Add a ",1920K" (or ",2048K" or ",2240K") to the end of the worktodo line and try again.
[code]Test=BLAH,46069867,72,1,1920K[/code]

kladner 2012-09-02 03:07

[QUOTE=Dubslow;310002]Add a ",1920K" (or ",2048K" or ",2240K") to the end of the worktodo line and try again.
[code]Test=BLAH,46069867,72,1,1920K[/code][/QUOTE]

[,1920K]
[CODE]E:\CUDA>CUDALucas-2.04-Beta-4.0-sm_20-x64 > output.txt
mkdir: cannot create directory `savefiles': File exists
CUDALucas.cu(693) : cudaSafeCall() Runtime API error 30: unknown error.

output.txt:


Starting M46069867 fft length = 1920K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 1920K
Starting M46069867 fft length = 2048K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 2048K
Starting M46069867 fft length = 2304K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 2304K
Starting M46069867 fft length = 2400K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 2400K
Starting M46069867 fft length = 2560K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 2560K
Starting M46069867 fft length = 2880K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 2880K
Starting M46069867 fft length = 3072K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 3072K
Starting M46069867 fft length = 3200K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 3200K
Starting M46069867 fft length = 3456K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 3456K
Starting M46069867 fft length = 3840K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 3840K
Starting M46069867 fft length = 4000K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 4000K
Starting M46069867 fft length = 4096K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 4096K
Starting M46069867 fft length = 4608K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 4608K
Starting M46069867 fft length = 4800K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 4800K
Starting M46069867 fft length = 5120K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.37068 >= 0.35, increasing n from 5120K
Starting M46069867 fft length = 5760K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 5760K
Starting M46069867 fft length = 6144K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 6144K
Starting M46069867 fft length = 6400K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 6400K
Starting M46069867 fft length = 6912K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 6912K
Starting M46069867 fft length = 7680K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 7680K
Starting M46069867 fft length = 8000K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
[/CODE]

Dubslow 2012-09-02 03:14

[QUOTE=kladner;310003][,1920K]
[CODE]E:\CUDA>CUDALucas-2.04-Beta-4.0-sm_20-x64 > output.txt
mkdir: cannot create directory `savefiles': File exists
CUDALucas.cu(693) : cudaSafeCall() Runtime API error 30: unknown error.

output.txt:


Starting M46069867 fft length = 1920K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 1920K
Starting M46069867 fft length = 2048K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 2048K
Starting M46069867 fft length = 2304K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 2304K
Starting M46069867 fft length = 2400K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 2400K
Starting M46069867 fft length = 2560K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 2560K
Starting M46069867 fft length = 2880K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 2880K
Starting M46069867 fft length = 3072K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 3072K
Starting M46069867 fft length = 3200K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 3200K
Starting M46069867 fft length = 3456K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 3456K
Starting M46069867 fft length = 3840K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 3840K
Starting M46069867 fft length = 4000K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 4000K
Starting M46069867 fft length = 4096K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 4096K
Starting M46069867 fft length = 4608K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 4608K
Starting M46069867 fft length = 4800K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 4800K
Starting M46069867 fft length = 5120K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.37068 >= 0.35, increasing n from 5120K
Starting M46069867 fft length = 5760K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 5760K
Starting M46069867 fft length = 6144K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 6144K
Starting M46069867 fft length = 6400K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 6400K
Starting M46069867 fft length = 6912K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 6912K
Starting M46069867 fft length = 7680K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 7680K
Starting M46069867 fft length = 8000K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
[/CODE][/QUOTE]
:huh:

Try 1728 and 1792. Otherwise I have no idea.

flashjh 2012-09-02 03:23

Try running CUDALucas -r > output.txt

I'm curious if your card can pass the self test (-r)

Can you try the 3.2 | sm__1.3 also?

kladner 2012-09-02 03:34

[QUOTE=Dubslow;310005]:huh:

Try 1728 and 1792. Otherwise I have no idea.[/QUOTE]

1728 is still running, longer than any previous attempt. It seems to have passed the crisis point which took down the others. I'll give it a while longer and post the output, but this looks promising.

Thanks Bill.

EDIT: @flash: Thanks. I'll post the results shortly.

EDIT2: @Dubslow [CODE]
Starting M46069867 fft length = 1728K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 1728K
Starting M46069867 fft length = 1920K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 16 < 1000 && err = 0.50000 >= 0.35, increasing n from 1920K
Starting M46069867 fft length = 2048K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 2048K
Starting M46069867 fft length = 2304K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.50000 >= 0.35, increasing n from 2304K
Starting M46069867 fft length = 2400K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration = 32 < 1000 && err = 0.49219 >= 0.35, increasing n from 2400K
Starting M46069867 fft length = 2560K
Running careful round off test for 1000 iterations. If average error >= 0.25, the test will restart with a larger FFT length.
Iteration 100, average error = 0.07196, max error = 0.10547
Iteration 200, average error = 0.08213, max error = 0.10156
Iteration 300, average error = 0.08600, max error = 0.10156
Iteration 400, average error = 0.08815, max error = 0.10938
Iteration 500, average error = 0.08854, max error = 0.10156
Iteration 600, average error = 0.08882, max error = 0.10156
Iteration 700, average error = 0.08948, max error = 0.10156
Iteration 800, average error = 0.08965, max error = 0.09766
Iteration 900, average error = 0.08963, max error = 0.09766
Iteration 1000, average error = 0.08976 < 0.25 (max error = 0.10156), continuing test.
Iteration 10000 M( 46069867 )C, 0x21048490b7febb41, n = 2560K, CUDALucas v2.04 Beta err = 0.1172 (4:25 real, 26.4671 ms/iter, ETA 338:33:31)
Iteration 20000 M( 46069867 )C, 0xc9c576910a569076, n = 2560K, CUDALucas v2.04 Beta err = 0.1172 (4:24 real, 26.3610 ms/iter, ETA 337:07:41)
Iteration 30000 M( 46069867 )C, 0x1deb3580b15cb791, n = 2560K, CUDALucas v2.04 Beta err = 0.1172 (4:23 real, 26.3625 ms/iter, ETA 337:04:25)
SIGINT caught, writing checkpoint. Estimated time spent so far: 16:00
[/CODE]

I'll do the self-test next.

kladner 2012-09-02 04:44

1 Attachment(s)
Hi Jerry,

These are the results of only a partial CUDALucas-2.04-Beta-3.2-sm_13-x64 -r > output.txt. I'm letting it run again and will be more patient this time. How long should it be expected to run?


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

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