![]() |
[QUOTE=James Heinrich;296625]Correct. That portion only appears when Prime95 is uncertain which FFT size to use and runs a few iterations before the test to determine the best FFT size. It then records the FFT size used in case the test is interrupted/resumed.[/QUOTE]
Then as it stands, it's safe, I think... maybe not. I think the AID is required, even if it's blank, such that Test=2945063,69,1 wouldn't be parsed properly... crap. (And how do you do regexs in C? My lack-of-true-skill makes itself apparent.) |
Your experiences
I've had a dozen successfull matches but since 2.00 i've had 6 mismatches and only 2 matches. :-( All mismatches happened when CL started with fftlength=1572864 and increased after less than 100 iters to 1835008... Can anybody confirm this observation?
Additionally, when I insert a new expo to worktodo.txt (CL already running) it doesn't resume: cudalucas.ini is +1 to high in that case: Line 4 contains the next expo, cudalucas.ini says 4 but would require 3... Am I missing something? |
Umm... for the former problem, if you're testing in the 26M range, most of us have found that a smaller size of n = 1474560 works much better.
As for cudalucas.ini, it should only increase the count iff the exponent quits without the quit flag being set, i.e. the exponent's test is finished; if you quit with ^C, it should NOT increment; I believe that had been my experience, but obviously I'm no longer using a version that uses cudalucas.ini. |
[QUOTE=Dubslow;296746]Umm... for the former problem, if you're testing in the 26M range, most of us have found that a smaller size of n = 1474560 works much better.[/QUOTE]
Good tests are in the range 27M, bad tests beginning in upper half 28M. I'm testing with standard CL fft sizes to represent the default CL newby. [QUOTE=Dubslow;296746] As for cudalucas.ini, it should only increase the count iff the exponent quits without the quit flag being set, i.e. the exponent's test is finished; if you quit with ^C, it should NOT increment; I believe that had been my experience, but obviously I'm no longer using a version that uses cudalucas.ini.[/QUOTE] I haven't been at the PC. It ran, got a new assignment, then finished the running one and when a came home he hadn't started the new expo. All I find is a high cl.ini. No Ctrl-C was harmed during this test (harmed=pressed). |
Hmm... that's how it would behave if it didn't find anything else in worktodo.txt, even though you had added something. Here's the code:
[code] while (fgets (str, 132, fp) != NULL && quitting == 0) //fp is the workfile { if (sscanf (str, "%u", &q) == 1) //If we've read in an exponent { if (q < 86243) fprintf (stderr, " too small Exponent %d\n", q); else check (q, 0); //This is the main LL function } if (quitting == 0) //To get here, check() has returned either because we've finished and quitting==0, //or because ^C was hit and quitting!=0. //If we are not quitting, the increment the line and write it to cl.ini ++currentLine; fpi = fopen ("cudalucas.ini", "w"); if (fpi != NULL) { fprintf (fpi, "%d\n", currentLine); fclose (fpi); } } //Go around the while loop again, if reading the next workfile line is not NULL fclose (fp); //Close the work file and exit main(), terminating the program [/code] |
[QUOTE=Dubslow;296752]Hmm... that's how it would behave if it didn't find anything else in worktodo.txt, even though you had added something. Here's the code:[/QUOTE]
Just shooting in the dark here, since I haven't reviewed all of the CUDALucas code... But does CL close the FH (fp in the code) for the worktodo.txt file while it is working, and re-open it only when it needs to check for additional work? The quoted code suggests not, and this is probably the problem. |
[QUOTE=Dubslow;296752]Hmm... that's how it would behave if it didn't find anything else in worktodo.txt, even though you had added something. Here's the code:
[/QUOTE] I will try adding exponents only when CL is not running. I'll see if this makes a difference. I'm more worried about the mismatches. @Dub: Maybe you could post your personally trusted fft sizes and expo borders..? |
[QUOTE=chalsall;296754]Just shooting in the dark here, since I haven't reviewed all of the CUDALucas code...
But does CL close the FH (fp in the code) for the worktodo.txt file while it is working, and re-open it only when it needs to check for additional work? The quoted code suggests not, and this is probably the problem.[/QUOTE] Good point. I thought the same but am not very experienced with C file handles... |
[QUOTE=Brain;296756]Good point. I thought the same but am not very experienced with C file handles...[/QUOTE]
Modifying open files is a Really Bad Idea [SUP](TM)[/SUP]. Undefined behavior without IPC. (And, depending on the file system, even with IPC.) This is why worktodo.ADD functionality would be so useful.... |
I hate worktodo.add functions; I would vastly prefer if it just closed the dang file. It doesn't need it to be open for the whole damn test.
@Brain: The length I posted is my only trusted length :razz: I've only done 26M work, and am now moving it to 25M work (where the same length should run just fine; in fact a smaller one might do as well :P). I doubt it'd work for 28M expos, but maybe it's worth a shot? |
[QUOTE=Dubslow;296758]I hate worktodo.add functions;[/QUOTE]
From the perspective of a programmer, please explain why. [QUOTE=Dubslow;296758]I would vastly prefer if it just closed the dang file. It doesn't need it to be open for the whole damn test.[/QUOTE] Agreed. But without IPC (for example, a file lock or some other semaphore) you still have a race condition if any program other than CUDALucas touches that file. Getting extremely geeky... Yes, you also have a race condition with a worktodo.add file. But there's a trick we Unix geeks often use: if you "mv" (move) a file onto another, if the first file is open the reader will still have access to it unmodified until it closes it. (I believe (but don't know) that the same behavior exists under Windows.) Thus, if you know you only have one reader and one writer to worktodo.add (or whatever) (for, example, a work assignment spider) you can be absolutely sure of a sane state even without IPC. |
| All times are UTC. The time now is 23:15. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.