When the PrimeNet wavefront is near an FFT-length/exponent
breakpoint (as is currently the case with exponents ~17.7M),
project throughput is currently less than it could be, because
the server takes no account of the accuracy difference between
machines using the SSE2 code (currently that is only the P4s)
and those using the slightly more accurate standard x86 FPU
operations when it hands out assignments. In perusing my
assignments list this morning, I
noticed several exponents ~17.7M which were assigned to P4s.
Since the P4 breaks over to a 1024K FFT length at p ~17.66M,
these are taking around 20% more cycles to run on a P4 than
they would on a P3 or Athlon, where they could be run at 896K.
I've switched one of these with an assignment ~18M that was
previously in one of my P3's worktodo files, but the other
one is already well into its run on the P4, so will have to
stay there.
George, is there any reasonably short-term modifications that
could be made to the server code so it is smarter about handing
out assignments in this regard?
In the meantime, I encourage users of P4s to examine their
upcoming assignments, and for those in the 17.66-17.85M range,
either swap them with an exponent not in that range which is
currently assigned to a non-P4 system, or return them to the pool
via the manual tests page and get some new exponents which don't
fall into this range.
Cheers,
-Ernst