On 15 May 2001, at 22:46, Ken Kriesel wrote:
> Among others, I raised the question with George Woltman some time ago.
> I trust his judgment that his time is better spent elsewhere.
Agreed!
>
> However, I wonder if there might be some possibilities in trial factoring
> there.
> That would present the possibility of a factoring screensaver, and an FPU
> LLtest, running together on what is nominally a uniprocessor.
>
> Just speculation,
Nice idea (using the fact that trial factoring & screensaver would be
almost pure integer work, whereas LL testing is almost pure FP) but
with practical difficulties.
(1) To get any benefit, you're going to have to bind all that
functionality into one thread - because if you are running more than
one thread, the OS will schedule the threads independently, throwing
away any benefit which might be gained by parallelism.
(2) I think there would be serious difficulties in coordinating code
between LL testing (time per iteration almost constant, of the order
of tens of millions of CPU cycles) & trial factoring (time per
candidate very variable, and of the order of hundreds of CPU cycles).
I've no idea at all as to how you would usefully squeeze in a
screensaver too, but I do think that the code coordination neccessary
to parallelize tasks in a single process thread would be very hard to
achieve.
(3) Though trial factoring places almost no load on the system memory
bus or the floating-point execution units, there are other potential
bottlenecks within the CPU - in particular, the L1 instruction cache,
instruction decoders, instruction pipelines, jump prediction tables &
"spare" registers (required for out-of-order execution) - which may
well limit severely the amount of factoring work which could be done
in parallel with LL testing, without inflicting a significant
performance penalty on LL testing.
Given that trial factoring is well advanced, implementing a scheme
which increases the trial factoring throughput of the project as a
whole at the expense of LL testing throughput does not seem to be a
good idea.
However, if anyone can provide the functionality that Ken suggests
without impacting LL testing performance noticeably, I'll be just as
grateful as everyone else!
Regards
Brian Beesley
_________________________________________________________________________
Unsubscribe & list info -- http://www.scruz.net/~luke/signup.htm
Mersenne Prime FAQ -- http://www.tasam.com/~lrwiman/FAQ-mers