mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   GPU to 72 (https://www.mersenneforum.org/forumdisplay.php?f=95)
-   -   Automatic fetch of Trial Factoring work for GPU mfakt* (https://www.mersenneforum.org/showthread.php?t=17066)

bcp19 2012-08-19 13:15

You seem to be going a little complicated here, what about a program that was like the submission spider, set to run every X hours and just checked the size of the worktodo.txt file? I always refill my worktodo on mfakt* when it drops below 1K (cause I try to check it daily but sometimes every other day), but if I had an automatic thing like this I could have it check to see if it was below say 200 bytes (approx 7 assignments) and if so, then grab 1-10 more (depending on the time between program runs) and append worktodo.

chalsall 2012-08-19 17:04

[QUOTE=bcp19;308550]You seem to be going a little complicated here, what about a program that was like the submission spider, set to run every X hours and just checked the size of the worktodo.txt file?[/QUOTE]

Yeah... I can get a bit obsessive about solving problems... However, I have figured out a cross-platform solution. The same Perl program works under both Linux and Windows, and it is designed such that it can be a fetching spider, a submission spider and a mfakt* slave driver (or any combination of same) all at the same time. :smile:

I want to run through a few more error-recovery tests on my own systems, but I'll soon need a couple of beta testers for each OS type. If anyone is interested in giving this a try, please PM me with a machine name (or machine names) to associate with the fetching spider -- this is needed for the "shared secret" technique.

Any number of instances can be associated with each machine, so if you (for example) run four instances of mfaktc on one machine, only one machine association is needed -- each instance will appear separately on GPU72, much like the threads/CPUs for Prime95/mprime.

LaurV 2012-09-29 05:05

Any news?

Bdot 2012-10-02 12:10

[QUOTE=chalsall;308566]Yeah... I can get a bit obsessive about solving problems... However, I have figured out a cross-platform solution. The same Perl program works under both Linux and Windows, and it is designed such that it can be a fetching spider, a submission spider and a mfakt* slave driver (or any combination of same) all at the same time. :smile:

I want to run through a few more error-recovery tests on my own systems, but I'll soon need a couple of beta testers for each OS type. If anyone is interested in giving this a try, please PM me with a machine name (or machine names) to associate with the fetching spider -- this is needed for the "shared secret" technique.

Any number of instances can be associated with each machine, so if you (for example) run four instances of mfaktc on one machine, only one machine association is needed -- each instance will appear separately on GPU72, much like the threads/CPUs for Prime95/mprime.[/QUOTE]

I stumbled over this thread just now ... sorry for being quite late.

How about two additional hooks in mfakt*: one after it read a worktodo entry (or at least tried to ...), and one after it wrote a results entry.

This could be something like two ini-variables that define something being started by mfakt* in those two cases, for example:

FETCH_COMMAND=perl spider.pl fetch w1.txt
SUBMIT_COMMAND=perl spider.pl submit res.txt

Of course, mfakt* could automatically append the names of the worktodo and results files for the current instance.

I guess this could have simplified your spider, but now that you've finished it already ...

Anyway, to add hooks like that is not difficult, and might turn out useful once the "temporary duct tape" is removed (i.e. you tell me how to fetch stuff programmatically ;-).

Anyway, I also use your submit spider (after adding proxy support), and have not (yet) tried to move it into my C(++) code. It's so much easier in perl ...

Hmm, maybe I could check out how prime95 is doing the communication and "learn" from that ..

swl551 2012-10-03 01:16

I'm willing to port the perl code to a .NET console app.
 
I'm willing to transpose it to a .NET console app as I was already planning this integration for my mfaktXapp.

I'll use his Perl code as the blueprint for its conversion to c#

Since this domain is Chalsall's I have no objection to turning over the source code to him when I'm done. I'll maintain it until I'm fired, die or you find a better solution.

Let me know.

LaurV 2012-10-03 02:03

[QUOTE=Bdot;313399]I guess this could have simplified your spider, but now that you've finished it already ... [/QUOTE]
Finish? Where? I may be missed the announcement, and am still waiting for it. And I don't understand why is so difficult, just provide a mechanism (http link? like factorDB?) to get an assignment from the gpu72 server, and let us worry about putting that in a fork or in a graphic interface... We just need to be able to tell to the server form time to time "give me something to do" and "this is my result". When WE desire, and in a SAFE way (like my assignments should me MINE not YOURS). Excluding crawling to the assignment page by hand, with mouse clicks and typing.

LaurV 2012-10-03 02:10

[QUOTE=kladner;308312]Until Adobe puts out a 'nix version of Photoshop I'm locked into Windows. I can't afford a Mac of similar power to my PC.

Still, I have plenty of frustrations with Windows going way back.:bangheadonwall::rakes:[/QUOTE]

Is there any mac of a similar power to a (generic) PC? :razz:

LaurV, everyday frustrated by Windows and women. We can't live with them. We can't live without them...

swl551 2013-03-26 01:32

1 Attachment(s)
[QUOTE=LaurV;313130]Any news?[/QUOTE]
Yes. For windows you must call the Kernel32.dll GenerateConsoleCtrlEvent


First you have to AttachConsole
Second GenerateConsoleCtrlEvent



Windows 8 seriously mucked up this interaction. (see my code comments on what broke with Windows 8.)



Exact code from MISFITs' SendCtrlCode project. For windows you could launch SendCtrlCode.exe from Perl and pass in the PID. It may not be how you wanted to solve the problem, but it works.

I hope it helps with any future projects.

kladner 2013-03-26 02:49

[QUOTE=LaurV;313448]Is there any mac of a similar power to a (generic) PC? :razz:

LaurV, everyday frustrated by Windows and women. We can't live with them. We can't live without them...[/QUOTE]

Long after the question.....does this come close to similarity?
[url]http://www.macmall.com/p/Apple-Mac-Pro/product~dpno~9232259~pdp.hgcjafi[/url]

kracker 2013-03-26 05:02

[QUOTE=kladner;334973]Long after the question.....does this come close to similarity?
[url]http://www.macmall.com/p/Apple-Mac-Pro/product~dpno~9232259~pdp.hgcjafi[/url][/QUOTE]

The Xeon E5645 is only $574.99 at [URL="http://www.newegg.com/Product/Product.aspx?Item=N82E16819117256"]newegg[/URL]... the whole server/computer is $3,627.99... wow looks like something is really expensive there or.... Usual high mac-like prices.

Also, it is technically *not* 12 core, it is 6 core with HT. :edit:

kladner 2013-03-26 11:47

[QUOTE=kracker;334982]The Xeon E5645 is only $574.99 at [URL="http://www.newegg.com/Product/Product.aspx?Item=N82E16819117256"]newegg[/URL]... the whole server/computer is $3,627.99... wow looks like something is really expensive there or.... Usual high mac-like prices.

Also, it is technically *not* 12 core, it is 6 core with HT. :edit:[/QUOTE]
Look again.

[QUOTE]2.4GHz 12-Core (2x 6-Core) Intel Xeon[/QUOTE]

[QUOTE] The single-processor Mac Pro offers four slots that support up to 32GB of DDR3 ECC SDRAM, while the dual-processor Mac Pro offers eight slots that support up to 64GB.[/QUOTE]

[QUOTE][B]Up to 24 virtual cores.[/B]The Intel Xeon processors support Hyper-Threading, which allows two threads to run simultaneously on each core. So, for example, a 12-core Mac Pro presents 24 virtual cores that are recognized by OS X.[/QUOTE]


And yes. It is a Mac and costs accordingly.


All times are UTC. The time now is 13:38.

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