By the way, I turned on multithreading on my laptop yesterday, and it only ran one existing WU at a time. I had to change the config file to turn it back off temporarily.
I am not sure anymore, but perhaps the same (under-utitilized host) happened to me during my experiments with this feature on the Xeons before the challenge.
Right now all is fine:
4 single-thread tasks on a 4C CPU,
2 dual-thread tasks on another 4C,
2 dual-thread tasks plus 6 e@h feeders on 10C (PrimeGrid forced to 2 tasks max as posted above, by means of the max_concurrent tag),
1 four-thread task plus 3 e@h feeders on 6C/HT (PrimeGrid forced to 1 task max),
14 dual-thread tasks on 2x14C,
4 seven-thread tasks on 2x14C.
I will revisit how the two 2x14s do in terms of PPD after one or two more days and reconfigure as indicated. (One 4C and the 6C will have to leave PrimeGrid during the week due to their noise.)
Note, omit
max_concurrent in the app_config.xml if you do not want to specify a CPU limit in this way. (I guess Ken g6 is aware of that, just mentioning it for others who, like myself, do not deal with app_config.xml's day in, day out...)
Can I switch to multicore in the middle of a WU?
I switched once in the following way:
- Had four single-threaded tasks running on a 4C,
- wrote C:\ProgramData\BOINC\projects\www.primegrid.com\app_config.xml,
- exited boincmgr and had it shut down the tasks at this point,
- restarted boincmgr.
This resulted in two of the four tasks continuing from their previous progress percentage, but now running dual-threaded instead of single threaded. And the other two tasks sat there waiting for their turn, and they were also continued dual-threaded without losing previous progress. To be sure, I later looked these tasks up at the PrimeGrid web site, and they were marked valid (3) or pending (1), not invalid or error.
Is this for real cores or can virtual cores be included?
I tested hyperthreading only with single-threaded tasks, and it was detrimental even on Linux (which I assume to deal better with hyperthreading than Windows). My guess is that it is detrimental with multi-threaded PSP-LLR tasks too.
(edit) Unfortunately, to prove or disprove it by measurement takes a long time. But from what I read elsewhere, HT is generally discouraged with LLR.
IE: my I5 as two cores or four?
(edit) That would be two cores on i5-6200U, 2 single-threaded workers or 1 dual-threaded worker with HT off, or with HT on with total utilization forced to 50 %. Or double as many with HT on at 100 %, but possibly performing worse overall.
I switched hyperthreading off in the BIOS of all my machines, except in the two Einstein@Home feeders. (Which will soon leave E@H for other endeavors.)