mersenneforum.org  

Go Back   mersenneforum.org > Great Internet Mersenne Prime Search > PrimeNet

Reply
 
Thread Tools
Old 2021-09-05, 21:27   #12
kriesel
 
kriesel's Avatar
 
"TF79LL86GIMPS96gpu17"
Mar 2017
US midwest

132278 Posts
Default Thread hijacked

Moderator, please relocate posts 5 through 10 to https://www.mersenneforum.org/showthread.php?t=26574
Let's get back on course.

Thank you.
kriesel is offline   Reply With Quote
Old 2021-09-05, 23:21   #13
kriesel
 
kriesel's Avatar
 
"TF79LL86GIMPS96gpu17"
Mar 2017
US midwest

5,783 Posts
Default

I thought posts 1 and 4 of this thread were clear, but apparently not. Imagine that for long manual assignments, such as wavefront PRP or higher exponents PRP or the occasional LL DC, that are performed without any Python scripts involved or Python installed, or the user is unwilling to run any Python scripts, or specific one(s), for whatever reason, that the manual results submission page also supported submitting by copy/paste a single line of logged console output in default format for the application, indicating progress of an assignment in progress. At long last, truly manual operation could show progress updates. That could help reduce poaching and wasted cycles and fraying tempers.

"Long assignments", by definition, excludes P-1 at the wavefront for reasonable bounds and hardware selection.
P-1 is typically ~40x shorter run time for the same exponent and hardware than PRP or LL. Bounds optimization tends to maintain that run time ratio over wide range of exponents. I run wavefront P-1 on an ancient Quadro2000 currently in CUDAPm1. That takes a day or more to do a single P-1 both stages. That does not occur to me as long enough to require progress updating. Mlucas on a couple ordinary CPU cores takes about as long for P-1.

It would be good to support some means of MANUALLY submitting progress indications on MANUAL assignments. In my opinion the first three in priority are
1) GpuOwl PRP;
2) GpuOwl LL DC;
3) CUDALucas which is only ever issued as LL DC these days.
Versions that would be ideal to support: Gpuowl V6.11-380 and V7.2-53 for reasonably recent GPUs; CUDALucas 2.06 (for those GPUs too ancient to run Gpuowl). Supporting their formats would likely support nearby version numbers too.

Such a capability could be leveraged also in the various scripts, whether python or perl or whatever, that interact with manual web server pages.

It's not like nothing like it's ever been done.
https://www.mersenne.ca/obd does reservation, results submission, and editing of reservations, all in one page. Edit includes: Unreserve, enter an ETA date, enter an integer % complete, and even revise reservation bit level.
It doesn't even require proper syntax of a log line from an application as a low hurdle against casual fakery; it's bare values keyed in, or buttons clicked. Presumably only the assigned user can edit an assignment. That's pretty cool.
Attached Thumbnails
Click image for larger version

Name:	obd progress edit.png
Views:	18
Size:	27.9 KB
ID:	25618   Click image for larger version

Name:	obd progress display.png
Views:	19
Size:	20.9 KB
ID:	25619  
kriesel is offline   Reply With Quote
Old 2021-09-06, 14:27   #14
tdulcet
 
tdulcet's Avatar
 
"Teal Dulcet"
Jun 2018

23·5 Posts
Default

Quote:
Originally Posted by kriesel View Post
I thought posts 1 and 4 of this thread were clear, but apparently not. Imagine that for long manual assignments, such as wavefront PRP or higher exponents PRP or the occasional LL DC, that are performed without any Python scripts involved or Python installed, or the user is unwilling to run any Python scripts, or specific one(s), for whatever reason, that the manual results submission page also supported submitting by copy/paste a single line of logged console output in default format for the application, indicating progress of an assignment in progress. At long last, truly manual operation could show progress updates. That could help reduce poaching and wasted cycles and fraying tempers.
Anyone is free to write a v5 PrimeNet API client in any language they want. In the 16 years that v0.95 of the v5 API has existed, @danc2 and I are the only ones to create a third party tool that fully uses it. I presume that this is because doing so is a lot of work, as I previously explained. Our script is currently over 2,000 lines of code (LoC) and will be near 2,250 LoC after I add proof uploading support.

I thought the topic of this thread was that you wanted progress reporting for CUDALucas and GpuOwl. Our script of course implements that, the first and only script to do so, which I originally thought would satisfy your request. Our script also automates everything, so users do not have to manually do anything. I apologize that I misunderstood.

Quote:
Originally Posted by kriesel View Post
"Long assignments", by definition, excludes P-1 at the wavefront for reasonable bounds and hardware selection.
P-1 is typically ~40x shorter run time for the same exponent and hardware than PRP or LL. Bounds optimization tends to maintain that run time ratio over wide range of exponents. I run wavefront P-1 on an ancient Quadro2000 currently in CUDAPm1. That takes a day or more to do a single P-1 both stages. That does not occur to me as long enough to require progress updating. Mlucas on a couple ordinary CPU cores takes about as long for P-1.
Well, technically, users do not need progress reporting on any assignments, it is just nice to have. I am currently running Mlucas v20.1 on an ARM system that can do four wavefront P-1 assignments at a time, which takes about four days. GpuOwl v7.2 also seem to run P-1 stage 2 to much higher bounds by default than any other GIMPS program I have used, so the full P-1 takes about five days on the very slow GPU I am using. However, I mainly implemented the P-1 progress reporting for the P-1 done before much longer LL/PRP assignments, so users will set the correct stage, percentage and estimated completion date on the GIMPS website for their LL/PRP tests.

Quote:
Originally Posted by kriesel View Post
It would be good to support some means of MANUALLY submitting progress indications on MANUAL assignments. In my opinion the first three in priority are
1) GpuOwl PRP;
2) GpuOwl LL DC;
3) CUDALucas which is only ever issued as LL DC these days.
Versions that would be ideal to support: Gpuowl V6.11-380 and V7.2-53 for reasonably recent GPUs; CUDALucas 2.06 (for those GPUs too ancient to run Gpuowl). Supporting their formats would likely support nearby version numbers too.
I understand it is not manual, but for reference, our script does support all of that and a lot more...

Quote:
Originally Posted by kriesel View Post
It's not like nothing like it's ever been done.
https://www.mersenne.ca/obd does reservation, results submission, and editing of reservations, all in one page. Edit includes: Unreserve, enter an ETA date, enter an integer % complete, and even revise reservation bit level.
It doesn't even require proper syntax of a log line from an application as a low hurdle against casual fakery; it's bare values keyed in, or buttons clicked. Presumably only the assigned user can edit an assignment. That's pretty cool.
If you really want manual, while you wait for someone to implement your proposed changes to the manual testing pages, you could always manually enter the percentage complete and ETA for each of your assignments in those cURL commands in my previous post. The first command only needs to be run once for each system. The second command needs to be run for each assignment every time you want to report the progress.

However, we would of course strongly encourage you to try our PrimeNet script on one of your systems... If it is easier, you could always try it with Mlucas on one of the cloud always free tiers listed in your reference documentation, such as the newer free Oracle ARM VMs with up to 4 cores and 24 GB of RAM.
tdulcet is online now   Reply With Quote
Old 2021-09-06, 15:12   #15
Uncwilly
6809 > 6502
 
Uncwilly's Avatar
 
"""""""""""""""""""
Aug 2003
101×103 Posts

271716 Posts
Default

Quote:
Originally Posted by kriesel View Post
Yes. But they tend to be quite large, much larger than the attachments limit when posting to this forum, and slow to load.
Someone can make them and put them up on a google drive or a dropbox or the like. There are options. George used dropbox for some early beta versions.
Uncwilly is online now   Reply With Quote
Old 2021-09-06, 15:44   #16
chalsall
If I May
 
chalsall's Avatar
 
"Chris Halsall"
Sep 2002
Barbados

26E116 Posts
Default

Quote:
Originally Posted by tdulcet View Post
Anyone is free to write a v5 PrimeNet API client in any language they want. In the 16 years that v0.95 of the v5 API has existed, @danc2 and I are the only ones to create a third party tool that fully uses it.
Just for the record... I've written quite a bit of Perl code that interacts with the Primenet API. Admittedly, this is deployed as "Software as a Service" (SaaS), and so isn't publically seen.

While not actually using the API but rather the Primenet user-level pages, please see this page for the human and this page for the Perl for just one of many examples of the prior art.

I now return to my regularly programmed programming...
chalsall is online now   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
Can't get manual page to parse a result Siegmund PrimeNet 6 2017-01-08 22:22
New Manual Results Submission Page TheMawn PrimeNet 12 2014-04-09 14:30
Manual result submission could fail sonjohan PrimeNet 12 2012-04-25 13:17
Manual submission of automatic assignment result tichy PrimeNet 4 2010-12-17 09:57
Sieve submission page available ltd Prime Sierpinski Project 7 2007-06-16 09:50

All times are UTC. The time now is 04:20.


Thu Oct 21 04:20:49 UTC 2021 up 89 days, 22:49, 1 user, load averages: 2.55, 2.73, 2.62

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.