Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Attempt to make PRPLL compatible with AutoPrimeNet #316

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

olympichek
Copy link

I made an attempt to make PRPLL compatible with AutoPrimeNet. Initially I made this changes for my own use, but then decided to make a pull request here. I don't think this is ready to be merged as is. However, I would like to know if there is an interest to continue this work.

Currently, PRPLL reads tasks from the per-worker worktodo-<n>.txt files and writes logs to per-worker gpuowl-<n>.log files, but writes results to a common results.txt file.

This pull request makes PRPLL to create separate directories for each worker: worker-0, worker-1 etc. Within each of this directories, it uses standard worktodo.txt, results.txt and gpuowl.log files. This way, it is possible to use PRPLL with the current version of AutoPrimeNet, by selecting GpuOwl as a used porogram and by pointing AutoPrimeNet to each worker's directory.

Warning: currently, this pull request removes support for the -pool option. I am not sure how this option should interact with the layout described above. This option is also not compatible with AutoPrimeNet, as I understand it.

@tdulcet
Copy link
Contributor

tdulcet commented Dec 26, 2024

Thank you for your work on this! As you may know, I am the current maintainer of AutoPrimeNet. I offered to Mihai a couple of times to do something similar, but have not yet had a chance to follow up, so thanks for taking the initiative. I know many people in the GIMPS community have been looking forward to PRPLL restoring PrimeNet server compatibility, so this will be a great improvement.

This way, it is possible to use PRPLL with the current version of AutoPrimeNet, by selecting GpuOwl as a used porogram and by pointing AutoPrimeNet to each worker's directory.

If/When this PR is merged, I would be happy to release a patch update for AutoPrimeNet to restore the --prpll option and the equivalent --setup prompt, as well as enable support for CERT assignments.

Warning: currently, this pull request removes support for the -pool option. I am not sure how this option should interact with the layout described above. This option is also not compatible with AutoPrimeNet, as I understand it.

Yes, the -pool option is not compatible with the PrimeNet API, but based on previous discussions, I suspect he might want to keep it for use with the legacy PrimeNet script in this repository. Maybe your changes for PrimeNet server compatibility could be the default, but when using the -pool option it would revert to the previous behavior. I will send an e-mail later today to @preda, the PrimeNet server administrators and the other AutoPrimeNet collaborators to see if we can find a solution.

@olympichek
Copy link
Author

There is one more change this pull request does which I forgot to mention at first.

Currently PRPLL selects the task with a smallest exponent, with CERT tasks having a priority. This behavior does not work well with AutoPrimeNet, as it assumes that assignments are completed in that order in which they are present in the worktodo file. In this pull request I made PRPLL to process the assignments in-order, with an exception that CERT tasks still have a priority.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants