![]() |
![]() |
#386 |
"Alexander"
Nov 2008
The Alamo City
1B916 Posts |
![]()
If you're willing to put in the work finding the FFT jumps (fun detective work IMO) and per-iteration times (not as fun; you may not want to run full tests the whole way like I did up to 512K), you can plug them into LLRTools (https://www.mersenneforum.org/showpo...2&postcount=35) and let that spit out the average test time for any range.
|
![]() |
![]() |
![]() |
#387 |
Sep 2006
The Netherlands
3·233 Posts |
![]()
Happy - you sure you can't do better with a stick in the sand than that?
|
![]() |
![]() |
![]() |
#388 |
"Alexander"
Nov 2008
The Alamo City
1101110012 Posts |
![]()
I could write a script to automate finding those FFT jumps? (It would help me immensely too.) Pick a language. I'm good at most common ones. :)
To be honest, I'm not sure who I was supposed to be answering. I thought I was coming up with a solution for your removal rate dilemma, if that hasn't already even been solved. My posts-per-page count (19) is such that I don't have the post you replied to on this page anymore. |
![]() |
![]() |
![]() |
#389 |
Mar 2006
Germany
2×1,433 Posts |
![]()
@diep
I've created the Riesel k=32767 in the Wiki and reserved it for you (including tested to n=50k). I've also updated the k=89 reservation. If you got any further results for k=32767 please fill them in. |
![]() |
![]() |
![]() |
#390 |
Sep 2006
The Netherlands
3×233 Posts |
![]()
Kar, c'est bon!
You can be sure i will report it if there is a new one above n=1569 :) Please note for the few who might not know: testspeed of LLR with larger k's is a lot slower than small k's. k = 89 and k=69 here tests roughly factor 2 faster than k=32767, under the same conditions. At the CPU's with many cores here what matters most is that LLR FFT-size stays within combined L3 cachesize : #cores * L3_cache_a_core I do not know details yet the FFT-size seems dependant upon which k-factor you use. (so if you know the FFT size for that specific k-factor and n-size in units multiply it with 16 bytes - because the size is in doubles and you need 1 double which has t he information and 1 to write new information to, and a double is 64 bits so that's 8 bytes and you need 2 of that makes 16 bytes. The blabla from manufacturers that you can add up the L2 and L1 cachesize to it seems utter blabla from the manufacturers to me by the way yet that's not relevant here - just L3 cachesize matters there in that comparision - except if you do not have a L3 cache then L2 cache size matters. So to say it technical the algorithm doesn't seem to work in-situ regrettably) Last fiddled with by diep on 2020-11-27 at 10:12 |
![]() |
![]() |
![]() |
#391 | |
"Alexander"
Nov 2008
The Alamo City
32×72 Posts |
![]() Quote:
|
|
![]() |
![]() |
![]() |
#392 |
"Alexander"
Nov 2008
The Alamo City
32·72 Posts |
![]()
Here is the promised script. It's a little slow, and I haven't tested it on Windows (I don't currently have access to a Windows box), but it's completely automated once started. It uses a binary search (which it prints out) to find the minimum n for every FFT length below a given limit (provided on the command line; you can give the exact number or a "K" or "M" suffixed one like LLR prints out; the actual length doesn't have to be present on that platform). It dynamically finds the relevant FFT lengths for that platform through the search. Create a "temp" subfolder as a working directory for it to dump all of the temp files (it creates a ton of them). It uses the CLI version of LLR (assuming its name is "llr" in the current directory). Let me know if anyone finds this useful.
|
![]() |
![]() |
![]() |
#393 | |
Sep 2006
The Netherlands
3·233 Posts |
![]() Quote:
What do i type on the command line? something like this? python happy.py 32767 5800000 |
|
![]() |
![]() |
![]() |
#394 |
Jun 2020
7 Posts |
![]()
Releasing k=8847 and reserving k=2805.
|
![]() |
![]() |
![]() |
#395 | |
"Alexander"
Nov 2008
The Alamo City
32×72 Posts |
![]() Quote:
You have the arguments flipped. The max FFT length (not the max n) is the first one, since it's the only required one. The k you choose for the optional second argument shouldn't change the result significantly unless it starts zero-padding the FFTs (high 6-digits), and I chose k=100005 to avoid zero-padding while still shortening the timing tests (since the n's will be lower). n=5.8M is at the 480k FFT length for your k on my Core 2 Quad, and the Xeon won't be too much different, if at all, so run it to that or 512k. Something like "python3 happy.py 480K". I've attached another script that reads in the generated maxlen.txt and converts the max n's (which are adjusted in the file to match Mersenne values) for any chosen k. They should closely match the test results from the verbose printouts of the first script. It's called using "python3 fftlen.py k". |
|
![]() |
![]() |
![]() |
#396 |
"Alexander"
Nov 2008
The Alamo City
32·72 Posts |
![]()
I posted those two scripts (renamed to generate_maxlen.py and adjusted_fftlen.py) and a few others to a new GitHub repo: https://github.com/happy5214/rps-scripts. I'll post updates there. You'll need the fftlen.py library module for both scripts. I plan on adding a new argument interface to generate_maxlen.py to allow you to specify a max n instead of a max FFT length, and also to specify verbosity via a flag instead of by editing the code.
Last fiddled with by Happy5214 on 2020-12-02 at 09:06 Reason: Library module needed. |
![]() |
![]() |
![]() |
Thread Tools | |
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Best Work for Finding Primes | Unregistered | Information & Answers | 9 | 2012-06-24 13:50 |
Which settings to choose for best work? | jmb1982 | Software | 2 | 2009-04-07 09:33 |
Help test 210885 - Find a new top 5000 prime! | SlashDude | Riesel Prime Search | 121 | 2008-01-03 08:47 |
Help test 2995125705 - Find a new top 5000 prime! | SlashDude | Riesel Prime Search | 538 | 2007-05-08 01:42 |
The fastest way to a top-5000 prime? | lsoule | 15k Search | 13 | 2005-09-19 20:24 |