mersenneforum.org  

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

Reply
 
Thread Tools
Old 2015-10-27, 16:10   #1
airsquirrels
 
airsquirrels's Avatar
 
"David"
Jul 2015
Ohio

11·47 Posts
Default Machine credit for Manual Results

Is there any way to get something like the CPUs page for all the manual results posted? I would love if Primenet identified these GPUs/CPUs.

All of my result entries for TF are taken with the machine/card name (i.e. ID: airsquirrels/BeastCousinMFAKTOCard8, no factor for M74425357...) but I see no easy way to determine how much work each machine is doing/has done.
airsquirrels is offline   Reply With Quote
Old 2015-10-27, 21:45   #2
Madpoo
Serpentine Vermin Jar
 
Madpoo's Avatar
 
Jul 2014

1100110011012 Posts
Default

Quote:
Originally Posted by airsquirrels View Post
Is there any way to get something like the CPUs page for all the manual results posted? I would love if Primenet identified these GPUs/CPUs.

All of my result entries for TF are taken with the machine/card name (i.e. ID: airsquirrels/BeastCousinMFAKTOCard8, no factor for M74425357...) but I see no easy way to determine how much work each machine is doing/has done.
Unfortunately all of the manual results get checked in to a single "manual testing" CPU for your account. Even though the computer name is included in the result string, when the client does an automatic check in it uses a machine specific GUID to identify itself (machine names can change, the GUID won't unless you erase that line from the local.txt file).

In theory it could parse out the computer name and match it up with the matching one in your account, but it's possible to have multiple machines with the same name (but different GUIDs) so it ends up being ambiguous.

I check all of my results in manually too, so I feel your pain. If there's a good way to handle this and make sure manual check-ins got credited to the right system, that'd be nice. But nearly all of my machines don't even have an entry in the Primenet database... they create a GUID on the client side when you do a fresh install, but until it talks to Primenet it never sends that info and never creates that entry, so even the idea of matching machine names with a GUID wouldn't work a lot of the time since Primenet might not know about the system at all.

The old primenet (v4) used to just accept the machine names submitted by the client, no GUIDs or anything, but it resulted in multiple systems sharing the same machine name which wouldn't work with the v5 server. It keeps track of system capabilities to be able to assign appropriate work (speed, CPU type, mem available to Prime95, rolling average, etc) so the GUID is a big part of making sure those stats don't get mixed up (and also why machines sharing the same GUID in the local.txt might get weird work assignments? If that ever happens, remember this post).

Altering the report to parse the result text for the machine name could also be problematic... right now it just joins on a couple tables to match results with the computer that checked it in so it's reasonably efficient. To do it a different way would mean parsing that computer name out in real time or doing it for all old results and then for ongoing stuff have it parsed out and stored in the DB, then being able to query on that.

Yeah... like I said, I'm in that boat too and if there was an easy way, I would have brought it up earlier.
Madpoo is offline   Reply With Quote
Old 2015-10-28, 03:54   #3
airsquirrels
 
airsquirrels's Avatar
 
"David"
Jul 2015
Ohio

11·47 Posts
Default

Is there a way to indicate the machine GUID in the results line? At least that way I could preprocess results so that primenet could properly attribute to the machine that generated them.

Alternatively, how hard would it be to have a new report (say, when clicking on manual results) that spit out data by machine name?

Last fiddled with by airsquirrels on 2015-10-28 at 03:56
airsquirrels is offline   Reply With Quote
Old 2015-10-28, 05:41   #4
LaurV
Romulan Interpreter
 
LaurV's Avatar
 
Jun 2011
Thailand

22E416 Posts
Default

MISFIT keeps a very good history. (just saying...)

Last fiddled with by LaurV on 2015-10-28 at 05:42
LaurV is offline   Reply With Quote
Old 2015-10-28, 15:01   #5
Madpoo
Serpentine Vermin Jar
 
Madpoo's Avatar
 
Jul 2014

29·113 Posts
Default

Quote:
Originally Posted by airsquirrels View Post
Is there a way to indicate the machine GUID in the results line? At least that way I could preprocess results so that primenet could properly attribute to the machine that generated them.

Alternatively, how hard would it be to have a new report (say, when clicking on manual results) that spit out data by machine name?
Well, it's non-trivial, off the top of my head.

Perhaps a good temporary thing would be to allow a user to view the raw logs sent from their own machines. That would include the text you used as an example: "airsquirrels/BeastCousinMFAKTOCard8, no factor for M74425357"

Right now there's no way to get that info, even for your own stuff. Reason 1 is that it includes the user and CPU name which can be different than the public "display" names, and reason 2 is that it includes the full residue, checksums, etc. that aren't of general use to anyone besides yourself.

But a report that at least let you view your own... that's still non-trivial but at least it wouldn't involve any back-end changes, just front-end, and then it'd be up to the user to do something with that output.

As LaurV pointed out, I guess misfit would let you do all of that and avoid doing manual check-in. If I understand it right, it submits results to Primenet just like Prime95 would... I have zero experience with misfit myself so I'd be useless on that aspect but I'm sure folks here can help you out there if needed.
http://mersenneforum.org/misfit/
Madpoo is offline   Reply With Quote
Old 2015-10-29, 11:53   #6
0PolarBearsHere
 
0PolarBearsHere's Avatar
 
Oct 2015

4128 Posts
Default

Theoretically, someone could hack a "submit only" bit of code to communicate with the primenet server and submit results based on a GUID from a text file. It won't be a manual results submit using the website, but it could theoretically achieve the ability to assign results to a specific computer.
The computer GUID also appears (from a quick look at the source code), to be based partially on the time the code is run, so theoretically (if I'm reading it right), you could also generate a bunch of GUIDs that ideally wouldn't clash. (or at least, not that much more likely than they are to clash already)

Essentially what I'm thinking of, is some code to generate a local.txt file with a freshly generated GUID and user-defined-name which could be placed in your mfkatc (or whatever) folder, and then a bit of submit only code to read the results.txt and local.txt files and submit results to primenet.

Not sure if that'd work though (and it wouldn't be a manual submission as currently performed either). So kind of like a misfit but with extra.

Last fiddled with by 0PolarBearsHere on 2015-10-29 at 11:55
0PolarBearsHere is offline   Reply With Quote
Old 2015-10-31, 01:58   #7
Madpoo
Serpentine Vermin Jar
 
Madpoo's Avatar
 
Jul 2014

29·113 Posts
Default

Quote:
Originally Posted by 0PolarBearsHere View Post
Theoretically, someone could hack a "submit only" bit of code to communicate with the primenet server and submit results based on a GUID from a text file. It won't be a manual results submit using the website, but it could theoretically achieve the ability to assign results to a specific computer.
The computer GUID also appears (from a quick look at the source code), to be based partially on the time the code is run, so theoretically (if I'm reading it right), you could also generate a bunch of GUIDs that ideally wouldn't clash. (or at least, not that much more likely than they are to clash already)

Essentially what I'm thinking of, is some code to generate a local.txt file with a freshly generated GUID and user-defined-name which could be placed in your mfkatc (or whatever) folder, and then a bit of submit only code to read the results.txt and local.txt files and submit results to primenet.

Not sure if that'd work though (and it wouldn't be a manual submission as currently performed either). So kind of like a misfit but with extra.
The API for communicating with Primenet is on the website... I assume that's how Misfit was setup (I have no idea) and I guess any other 3rd party thing out there whether it's a different client or some other proxy type of thing could do something similar. Not only going by the published API but also the source to Prime95 that you mentioned.

As far as I could tell, the GUID (on Prime95) is generated automatically by the client when installed with a blank/missing local.txt file. Most chatter between a specific Prime95 machine and the Primenet server will include that GUID when talking to it.

I'm guessing the first time the server sees a GUID is doesn't know about, it creates the DB entries for it. Ideally the new system would send a command to update the CPU information as well (make, model, speed, etc) so the server would also know about that stuff too but I guess that could be optional, not really sure.

Anyway, my familiarity with the API is only skin deep. I know just enough about it to look at the IIS logs and see what kinds of things the server was receiving from the client (it's all in the URL of the request). I don't really know what the server sends back, like when a client requests additional work. Standard http response of some type but it's probably not XML or JSON if I were a betting man.
Madpoo is offline   Reply With Quote
Old 2015-10-31, 17:28   #8
chalsall
If I May
 
chalsall's Avatar
 
"Chris Halsall"
Sep 2002
Barbados

246D16 Posts
Default

Quote:
Originally Posted by Madpoo View Post
The API for communicating with Primenet is on the website... I assume that's how Misfit was setup (I have no idea)...
My understanding (possibly wrong) is that MISFIT and floop use the manual submission form on Primenet, rather than the API. My Submission Spider (now generally deprecated) uses the manual submission form.

Quote:
Originally Posted by Madpoo View Post
Standard http response of some type but it's probably not XML or JSON if I were a betting man.
It isn't; it's CR/LF separated variable/value pairs. E.g.:
Code:
pnErrorResult=0
pnErrorDetail=SUCCESS
g=cebde3633e69ead14f79c68be533a7XX
u=XXXX
un=For Research
cn=R720_5
od=66
==END==
chalsall is offline   Reply With Quote
Old 2015-10-31, 18:40   #9
Mark Rose
 
Mark Rose's Avatar
 
"/X\(‘-‘)/X\"
Jan 2013

2·31·47 Posts
Default

Quote:
Originally Posted by chalsall View Post
My understanding (possibly wrong) is that MISFIT and floop use the manual submission form on Primenet, rather than the API. My Submission Spider (now generally deprecated) uses the manual submission form.
mfloop.py uses the manual submission form.
Mark Rose is offline   Reply With Quote
Old 2015-10-31, 19:00   #10
airsquirrels
 
airsquirrels's Avatar
 
"David"
Jul 2015
Ohio

11×47 Posts
Default

The one thing PrimeNet knows that my own maintained results log doesn't is the exact GhzDay credit for each result. I suppose there is an equation around here I could find to compute that one.

It would certainly be nice if there was just one client that handled CPUs and GPUs for both Cuda and OpenCL...

Last fiddled with by airsquirrels on 2015-10-31 at 19:00
airsquirrels is offline   Reply With Quote
Old 2015-11-01, 02:30   #11
Madpoo
Serpentine Vermin Jar
 
Madpoo's Avatar
 
Jul 2014

29·113 Posts
Default

Quote:
Originally Posted by chalsall View Post
My understanding (possibly wrong) is that MISFIT and floop use the manual submission form on Primenet, rather than the API. My Submission Spider (now generally deprecated) uses the manual submission form.
Oh, bummer. I was hoping it was using the API. That would have been cool.

Well, seems like some enterprising person could shove Primenet connectivity into mfakt* or CucaLucas so they could natively do all that stuff. Not me... I'm a script-guy, not a programmer. If I did it, you'd see batch files parsing CURL commands and outputs... it might work but it would be super ugly. LOL
Madpoo is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
GPU id/name for manual results preda GPU Computing 15 2017-08-16 17:34
PrimeNet API Manual testing or GPU machine GUID Mini-Geek PrimeNet 7 2015-12-23 20:54
mersenne.ca and manual results Gordon mersenne.ca 3 2015-08-31 03:08
manual results ramgeis PrimeNet 8 2013-05-30 06:33
Manually submitted P-1 results give more credit. Mr. P-1 PrimeNet 1 2011-10-24 14:17

All times are UTC. The time now is 08:55.

Sat Nov 28 08:55:55 UTC 2020 up 79 days, 6:06, 3 users, load averages: 1.17, 1.38, 1.46

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.