BOINC: How to limit the quantity of tasks downloaded?
Let's say you have an 8 thread CPU, and you want to download only as much work that can be crunched at a time. Simple enough, change the project resource share to zero, and only 8 single-threaded tasks will download. But now let's say I am using an app_config.xml file to force tasks to multi-thread and use all 8 threads, like you can do on primegrid. Even with a resource share of zero, it will download 8 tasks. Then one will crunch using all 8 threads, and 7 will sit there waiting their turn to run. Is there a way to force BOINC to download only 1 task at a time, in this situation? I though there was a option in the cc_config.xml file that would enforce a maximum number of tasks per project, but I can't find it. Maybe I am remembering it wrong. Any ideas?
Re: BOINC: How to limit the quantity of tasks downloaded?
Have you tried the command
project_max_concurrent
A limit on the number of running jobs for this project.
Sent from my SM-N960U using Tapatalk
Re: BOINC: How to limit the quantity of tasks downloaded?
Quote:
Originally Posted by
purplecfh
Have you tried the command
project_max_concurrent
A limit on the number of running jobs for this project.
That controls the number of tasks running at once, but not the number of tasks downloaded, I think.
Re: BOINC: How to limit the quantity of tasks downloaded?
There is a maxcoc and a project max coc, it's worth a try at least.
Sent from my SM-N960U using Tapatalk
Re: BOINC: How to limit the quantity of tasks downloaded?
Setup multiple clients, running 1 project per client and set <ncpus> or % processors to use number of threads you want on each client.
Re: BOINC: How to limit the quantity of tasks downloaded?
Quote:
Originally Posted by
scole of TSBT
Setup multiple clients, running 1 project per client and set <ncpus> or % processors to use number of threads you want on each client.
I think that will still result in the same problem. I am already running only one project per client, just PG. And only one task is running, using all 8 threads. But BOINC insists on downloading 8 tasks, with 7 idle. I want only one task running, using all 8 threads, with no idle tasks.
FWIW, the reason for this is to be the first to return tasks instead of the wingman, so you get the credit if a prime is found. So I want no aging tasks in a queue.
Re: BOINC: How to limit the quantity of tasks downloaded?
I guess you already have your cache set really low, like .01 days/0 additional?
Re: BOINC: How to limit the quantity of tasks downloaded?
Try <fetch_minimal_work>1</fetch_minimal_work> in the cc_config.xml. I'd restart the client after setting it.
Re: BOINC: How to limit the quantity of tasks downloaded?
Quote:
Originally Posted by
scole of TSBT
I guess you already have your cache set really low, like .01 days/0 additional?
Resource share is zero.
Re: BOINC: How to limit the quantity of tasks downloaded?
Quote:
Originally Posted by
scole of TSBT
Try <fetch_minimal_work>1</fetch_minimal_work> in the cc_config.xml. I'd restart the client after setting it.
The description for that one is kinda vague.
Quote:
<fetch_minimal_work>0|1</fetch_minimal_work>
Fetch one job per device (see --fetch_minimal_work).
And that points to:
Quote:
--fetch_minimal_work
Fetch only 1 job per device (CPU, GPU). Used with --exit_when_idle, the client will process one job per device, then exit.
I'll give it a try. Thanks for the suggestion.