Joined: 27 Sep 11
I don't know if it's affecting the credits or the actual science being done, but it appears that multi-core tasks are not calculating the CPU time properly.
This 16t task, for example, ran on 20 cores of my Ryzen 9 3900X for the full almost 19 hour run time, but the CPU time of 29.5 hours would indicate that it was only running on 1.56 cores...
And this 4t task ran on 4 cores for 6 hours but only counted 2.75 total hours of CPU time.
In addition, that 4t task got almost 10K credits for 6 hours of work on 4 cores (24 hours of CPU time), and the 16t task only got 20K credits for 19 hours of work on 20 cores (380 hours of CPU time), so the credits definitely aren't consistent for the work being done...
Joined: 17 Jun 17
Re CPU times:
BOINC is known to have a wrong bookkeeping of CPU time of multithreaded tasks if more than one task is fetched per work request. This problem is well-known over at PrimeGrid. (On the other hand, YAFU's extremely low quota on tasks in progress causes most work request to get you only one new task.)
However, it is quite possible that a YAFU-16t with 19 h run time did in fact expend only 29.5 h CPU time. The tasks have significant portions of low parallelism in them.
Forget credits at YAFU. YAFU uses CreditNew. The highly variable performance profiles of YAFU workunits makes the CreditNew FLOPS estimation algorithm unable to converge for a given host.
In other words, the "FU" in "YAFU" among else refers to how YAFU assigns credit.