mersenneforum.org  

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

Reply
 
Thread Tools
Old 2020-08-27, 18:41   #166
storm5510
Random Account
 
storm5510's Avatar
 
Aug 2009

19·101 Posts
Default

Quote:
Originally Posted by P-A View Post
Sorry for not giving the info, but yes, it is win 10 and do have permissions etc. Seems to be able to upload but hen gives problems later. Not for every cert but sometimes. by the way, I also have a number of old p9xxx files. Should they not automatically be deleted or should this be done manually?
Somebody correct me, if needed: Those are temporary files from a previous run. I don't believe there is any need to keep them. Actually, they may be part of your problems. A guess: If they exist and Prime95 sees them, it will try to find a matching item in your worktodo.txt file. If it can't, well, I am not sure what happens. They should have been deleted automatically.
storm5510 is offline   Reply With Quote
Old 2020-08-27, 19:52   #167
Ensigm
 
Aug 2020

2·3·19 Posts
Default

Quote:
Originally Posted by P-A View Post
Sorry for not giving the info, but yes, it is win 10 and do have permissions etc. Seems to be able to upload but hen gives problems later. Not for every cert but sometimes. by the way, I also have a number of old p9xxx files. Should they not automatically be deleted or should this be done manually?

From undoc.txt:
Quote:
By default P-1 work does not delete the save files when the work unit completes.
This lets you run P-1 to a higher bound at a later date. You can force
the program to delete save files by adding this line to prime.txt:
KeepPminus1SaveFiles=0
Ensigm is offline   Reply With Quote
Old 2020-08-27, 20:19   #168
keisentraut
 
Jul 2020

22×3 Posts
Default

I just got a CERT assignment which was assigned while I had left mprime unattended for a few hours. This is not good, because I have one machine which runs mprime only sometimes and takes around 2 years to finish a PRP test. For instance, I'm still busy with M112233977 (which I self assigned far from the current wavefront).

If this machine would get a CERT assignment (still runs the old version), I cannot guarantee that it will finish in a timely matter and the server will have to store the large proof file. Therefore, I would suggest disabling CERT verifications by default for machines which are configured to run only a few hours per day.

Last fiddled with by keisentraut on 2020-08-27 at 20:24
keisentraut is offline   Reply With Quote
Old 2020-08-27, 21:01   #169
Prime95
P90 years forever!
 
Prime95's Avatar
 
Aug 2002
Yeehaw, FL

740910 Posts
Default

Quote:
Originally Posted by keisentraut View Post
I would suggest disabling CERT verifications by default for machines which are configured to run only a few hours per day.
Good idea.
Prime95 is offline   Reply With Quote
Old 2020-08-27, 21:41   #170
Ensigm
 
Aug 2020

2×3×19 Posts
Default

Quote:
Originally Posted by Prime95 View Post
Good idea.

I would suggest disable CERT by default, and let users opt in on a per machine basis when they run prime95 on that machine for the first time. If the user agrees, then immediately lead them to configure Resource Limits.


If I remember correctly, CERT only takes 0.2% time of a PRP, which means if >2% PRP users do CERT with 10% time we will not backlog in the long run, and if 10% users do CERT then almost all certifications can be done in a fairly timely manner.
Ensigm is offline   Reply With Quote
Old 2020-08-27, 21:46   #171
Ensigm
 
Aug 2020

2·3·19 Posts
Default

Going a bit further, the flow when prime95 is run on a machine for the first time IMHO should be

Join GIMPS? (Yes) -> configure Worker Threads (choose worktype, etc.) -> agrees to do CERT? -[
-> No -> assign work
-> Yes -> configure Resource Limits -> assign work

If the flow can be redesigned like this, then maybe we can make the default answer to "agree to do CERT?" as yes, since users get to know and decide what resources will be used. With the current decision flow, however, I insist that certification should be opt-in.

Last fiddled with by Ensigm on 2020-08-27 at 22:14
Ensigm is offline   Reply With Quote
Old 2020-08-29, 01:37   #172
LaurV
Romulan Interpreter
 
LaurV's Avatar
 
Jun 2011
Thailand

100100101000112 Posts
Default

One thing that troubled me like forever, beside of the fact that I always need to arrange the windows by hand in P95 (luckily, I don't restart often, but when it happens, is a pain in the butt, if you have many workers, the cascade/tile options aren't good, you see nothing on screen, and there is no "remember windows position", or "save windows config" possible, to restore the status at next P95 restart; so. you spent a loooong time to arrange all your worker windows in 2, 3, 4 columns, or rows, nice, aligned -- parenthesis in parenthesis, also, snap to grid is missing, you need to align at pixel level, which is another pain in the but, unless your mouse has variable CPI - at job I don't have that! - end of parenthesis -- then the computer crash or electricity is gone due to daily thunderstorms here in this period, and you have to do it again... life's a bitch ) is the fact that you need to be connected to the server when you change the number of workers. If you are not connected to the server (which is in another sub-menu!) then the worker's submenu is gray and can't be clicked. But if you go in the other submenu and connect to server, then, when you close that other submenu, nine thousand seven hundred and thirty one unwanted assignments are coming**, before you have time to open the other menu to change the number of workers. Editing local ini files by hand is not always the best solution because first, you need to stop P95 to do that (wasting time) and then, well.. text editing is not for the faint of heart (read as: we are stupid and don't always know what exactly to edit...). It could be nice to make the two in a single dialog, or make them independent (i.e. ungray the options related to the number of workers, work type etc, the user should be able to change them as he wishes, and then, when he connects to the server, cordialities are exchanged... Alternative, make a checkbox to say "don't bring any assignments, I am in the process of creation" (changing options). Shhh... genius at work... Before Saturday morning coffee...


---------
edit: ** assuming you run ECM or other short-lived assignments, through you loop at a rate of tens or hundreds per day, because otherwise, for LL/PRP you don't run a lot of workers, so you won't need arranging lots of windows on screen. Then, be my guest to spend even more time to unreserve all those...

Last fiddled with by LaurV on 2020-08-29 at 01:50
LaurV is offline   Reply With Quote
Old 2020-08-29, 02:13   #173
Prime95
P90 years forever!
 
Prime95's Avatar
 
Aug 2002
Yeehaw, FL

31×239 Posts
Default

Quote:
Originally Posted by LaurV View Post
beside of the fact that I always need to arrange the windows by hand in P95 (luckily, I don't restart often, but when it happens, is a pain in the butt, if you have many workers, the cascade/tile options aren't good, you see nothing on screen, and there is no "remember windows position", or "save windows config" possible, to restore the status at next P95 restart; so. you spent a loooong time to arrange all your worker windows in 2, 3, 4 columns, or rows, nice, aligned -- parenthesis in parenthesis, also, snap to grid is missing, you need to align at pixel level, which is another pain in the but, unless your mouse has variable CPI - at job I don't have that! - end of parenthesis -- then the computer crash or electricity is gone due to daily thunderstorms here in this period, and you have to do it again... life's a bitch )
Prime95 does remember window positions--sort of. Try running prime95, setting your window positions, then exit prime95 gracefully. On restart, the windows should be restored. The key is that window positions are only written to prime.txt on a graceful shutdown.

Oh, and if it does not work, then I only told you this so that you'd go through the tedium of arranging windows one more time...
Prime95 is offline   Reply With Quote
Old 2020-08-29, 03:55   #174
LaurV
Romulan Interpreter
 
LaurV's Avatar
 
Jun 2011
Thailand

83·113 Posts
Default

Quote:
Originally Posted by Prime95 View Post
Oh, and if it does not work, then I only told you this so that you'd go through the tedium of arranging windows one more time...
Haha, you got me, I would have done it mindlessly, without your remark. But reading it, I tried on minion's computers first (wife laptop 2 cores, running win 7, and old desktop 4 cores running XP), where the "tile" was the norm, no arrangement needed - moved the workers a bit, exit, back, nope, it doesn't work. Luckily I didn't try it on the big wheelbarrow, otherwise I would have put you on the list, to catch you next time when you visit Thailand... (by the way, when? Not that I am eager for the beer, but I know people only find prime numbers when you are in vacations).
Edit: BTW, is there a link to the last sources available to the large public? I could put my nose a bit into the graphic interface (i.e. arranging the windows in 2-3-4 columns and/or rows by single click in the menu). This should be easy. And I can share it.
Edit 2: also a sample of the init file with arrangement would be nice, maybe we have a "saving" issue, but loading back works, so we would be comfortable editing the text once, and loading it every time.

Last fiddled with by LaurV on 2020-08-29 at 04:02
LaurV is offline   Reply With Quote
Old 2020-08-29, 05:04   #175
Prime95
P90 years forever!
 
Prime95's Avatar
 
Aug 2002
Yeehaw, FL

31×239 Posts
Default

Works here just fine (windows 10). Code was developed under Win95 -- so it ought to work on every Windows version in between.

Latest uploaded official source -- you'll need MSVC 2005:
http://www.mersenne.org/ftp_root/gim...8b7.source.zip

I have upgraded to VS2019. Go to post #1 in this thread for the 30.3 source. There's a bunch of dependencies though: hwloc, libgmp, libcurl. Makes compiling from source code a pain.
Prime95 is offline   Reply With Quote
Old 2020-08-29, 05:14   #176
Prime95
P90 years forever!
 
Prime95's Avatar
 
Aug 2002
Yeehaw, FL

31×239 Posts
Default

Relevant shutdown code:

Code:
	CWinApp* pApp = AfxGetApp();
	WINDOWPLACEMENT wp;
	if (pApp->m_pMainWnd && INI_FILE[0]) {
		pApp->m_pMainWnd->GetWindowPlacement (&wp);
		IniWriteInt (INI_FILE, "Left", wp.rcNormalPosition.left);
		IniWriteInt (INI_FILE, "Top", wp.rcNormalPosition.top);
		IniWriteInt (INI_FILE, "Right", wp.rcNormalPosition.right);
		IniWriteInt (INI_FILE, "Bottom", wp.rcNormalPosition.bottom);
	}

Code:
BOOL setSubWindowPlacement(
	CWnd	*pwnd,
	int	vnum)
{
	BOOL	handled = FALSE;
	char	name[16];
	char	rgch[80];
	WINDOWPLACEMENT wp = {0};

	wp.length = sizeof(wp);
	if (0 != pwnd->GetWindowPlacement(&wp))
	{
		RECT r = {0};
		RECT *prc	= &wp.rcNormalPosition;
		POINT *pptMin= &wp.ptMinPosition;
		POINT *pptMax= &wp.ptMaxPosition;
		int state = 0;

		handled = TRUE;

		if (wp.showCmd == SW_SHOWMAXIMIZED)
		{
			state = P95_WP_MAXIMIZED;
		}
		else if (wp.showCmd == SW_SHOWMINIMIZED)
		{
			state = P95_WP_MINIMIZED;
		}
		
		wsprintf(rgch, "%d %ld %ld %ld %ld %ld %ld %ld %ld", state, 
					prc->top, prc->right, prc->bottom, prc->left,
					pptMin->x, pptMin->y, pptMax->x, pptMax->y
				);

		wsprintf(name, "W%d", vnum);
		IniWriteString(INI_FILE, name, rgch);
	}

	return handled;
}
Produced this in prime.txt:

Code:
Left=926
Top=32
Right=2336
Bottom=880
W0=0 0 1386 224 80 -1 -1 -1 -1
W2=0 448 1386 673 206 -1 -1 -11 -45
W3=0 336 1386 673 0 -1 -1 -1 -1
W1=0 224 1386 448 0 -1 -1 -11 -45
W4=0 376 940 502 0 -1 -1 -1 -1
W5=0 502 940 628 0 -1 -1 -1 -1
Prime95 is offline   Reply With Quote
Reply

Thread Tools


All times are UTC. The time now is 00:49.

Mon Apr 19 00:49:30 UTC 2021 up 10 days, 19:30, 0 users, load averages: 1.46, 1.82, 2.00

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.