mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   MISFIT (https://www.mersenneforum.org/forumdisplay.php?f=103)
-   -   (archive)MISFIT (https://www.mersenneforum.org/showthread.php?t=17414)

swl551 2012-12-07 16:02

Next release of MISFIT will implement file locking
 
This weekend I'll be adding the file locking mechanism to MISFIT that bdot uses in mfaktO. Once completed the possibility of I/O collision between MISFIT and mfaktO should be zero.:smile:

mfaktC does not implement a file locking system so there will not be any benefit for that user base. :no:

Dubslow 2012-12-07 20:55

[QUOTE=swl551;320863]This weekend I'll be adding the file locking mechanism to MISFIT that bdot uses in mfaktO. Once completed the possibility of I/O collision between MISFIT and mfaktO should be zero.:smile:

mfaktC does not implement a file locking system so there will not be any benefit for that user base. :no:[/QUOTE]

CUDALucas 2.04 uses the same file locking as mfakto. (The code was quite literally copied.)

swl551 2012-12-08 20:05

[QUOTE=Dubslow;320892]CUDALucas 2.04 uses the same file locking as mfakto. (The code was quite literally copied.)[/QUOTE]
I will implement file locking into MISFIT CuLu at a later time.

swl551 2012-12-08 20:08

MISFIT 2.2.0 (WITH FILE LOCKING) [non CuLu version]
 
1 Attachment(s)
VERSION 2.2.0 is a real milestone in the life of MISFIT.

1. Implemented mfaktO style '.lck' file locking system.
The following MISFIT actions execute file-lock-management (detection, retry, assertion, cleanup)
UPDATE STATS
ADD WORK
ASSIGN WORK
BALANCE WORK
EXPORT RESULTS
EDITING FILES (BUILT IN EDITOR ONLY)
SEARCHING WORKTODO
WORKTO REPORTS
RESULTS REPORTS

In a typical MISFIT installation there is more than one directory containing files that need file-lock-management therefore whenever executing an action that requires file-lock-management MISFIT treats the entire set as one. If any one of the files has a lock collision or hard error the entire set is rolled back out of the locked state. (think database transactions /commit /rollback) and MISFIT aborts further processing.

An example would be you have 8 directories and you want to assign work out to them. MISFIT starts locking each workToDo.txt in each directory. If directory 6 encounters a lock collision and the wait_timeout is exceeded trying to apply a lock to workToDo (in directory 6) then MISFIT rollsback (unlocks) all the workToDo files it succesfully locked in directories 5,4,3,2,1 and aborts further processing.

LOCKING always executes a retry loop if there is an existing lock on a file (LOCK_COLLISION). The retry loop last up to 10 retries with SLEEP(100ms * RETRY_COUNT) between each retry. If the counter reaches 10 then LOCK_COLLISION is terminal and MISFIT aborts further processing. If the locks is released by the "other program" during the retry loop MISFIT will then assert the lock and continue processing.

Menu items for LOCK management are included to forcibly apply/remove/report on systemwide locks.


On a special note: Currently ONLY MFAKTO implements the '.lck' file locking system.

How to test with MFAKTO:
Stop your MFAKTO instances.
Use the menu item to "Apply systemwide file-locks"
Start MFAKTO
Observe MFAKTO's response to the file-locks
Use the menu item to "Remove systemwide file-locks"
Observe MFaKTO's response once the locks are removed.


Unlike MFAKTO which will wait forever for a lock to be released, MISFIT is a UI driven application and waiting forever is unsuitable as MISIT has many tasks to perform at any given time. If a process is aborted due to a lock collision it can be re-executed at a later time. Remember most lock conditions last about .25 seconds so allowing MISFIT to wait a max of 5.5 seconds for a lock to be released is very tolerant and suitable to a UI.

Enjoy.

Get from [url]http://mersenneforum.org/misfit/[/url]

Bdot 2012-12-09 11:24

[QUOTE=swl551;321012]VERSION 2.2.0 is a real milestone in the life of MISFIT.

1. Implemented mfaktO style '.lck' file locking system.
...
Enjoy.

Get from [URL]http://mersenneforum.org/misfit/[/URL][/QUOTE]

Great that locking is being used, thanks! Really nice to see MISFIT growing up so fast!

sonjohan 2012-12-10 13:21

Sorry that I'm not commenting anymore, as I'm not doing LL tests, but only TF on a single PC, I haven't updated nor tried out (m)any of the new versions.

swl551 2012-12-13 00:36

MISFITculu 1.0.2
 
[B]This is the MISFIT version to support CUDALucas[/B]

VERSION 1.0.2
1. Added GHZDayToDo calculation
2. Added GhzDzDone calculation including the FFT component as found in the results line of the file
3. Enhanced MISFIT to further prevent unwanted/premature purging of checkpoint files under abnormal conditions by:
a. increasing the inital delay to 60 minutes (from 30)
b. After all stalled process are cleared there is now a 60 minute delay before the next purge cycle will run

Get from [url]http://mersenneforum.org/misfit/[/url]

flashjh 2012-12-13 05:17

[QUOTE=swl551;321480][B]This is the MISFIT version to support CUDALucas[/B]

VERSION 1.0.2
1. Added GHZDayToDo calculation
2. Added GhzDzDone calculation including the FFT component as found in the results line of the file
3. Enhanced MISFIT to further prevent unwanted/premature purging of checkpoint files under abnormal conditions by:
a. increasing the inital delay to 60 minutes (from 30)
b. After all stalled process are cleared there is now a 60 minute delay before the next purge cycle will run

Get from [url]http://mersenneforum.org/misfit/[/url][/QUOTE]

Working great and looking good. Thanks.

swl551 2012-12-16 22:18

Ok, you guys are too quiet!
 
Is this the calm before some storm.

kracker 2012-12-16 22:25

[QUOTE=swl551;321829]Is this the calm before some storm.[/QUOTE]

Boom BOOOOOOOOOOOOMM!! :smile:


...
Hmm, Did I miss something?:loco:
...

swl551 2012-12-16 22:29

[QUOTE=kracker;321830]Boom BOOOOOOOOOOOOMM!! :smile:


...
Hmm, Did I miss something?:loco:
...[/QUOTE]

I don't think you missed anything. I'm just wondering where everyone is... So quiet...


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

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