[ggnfs] Re: Distributed sieving
- Hi All!
I think problem of distributed factoring is rather actual will become
more actual as GGNFS grows into more and more stable software.
Distributed sieving as it is implemented in GGNFS in my opinion has
one drawback -- it is static. Number of machines should be
predetermined and it is not trivial to add several machines to sieving
My suggestion is to make it more like in NFSNET: client (siever)
communicates with server via HTTP (or any other well-known transport) and
requests assignments (lines or q-values). After sieving is done,
client submits relations to server. As a result we have fully
distributed sieving with centralized relations store. In this
scenario it is no problem to add/remove machines to/from sieving
job. However, server should track all assigned and submitted lines or
q-values to be sure nothing is missed.
Moreover, it may be even possible to use original NFSNET client (which
is AFAIK line siever) with this custom-written server. Source code for
NFSNET client is not available, but its behaviour is predictable and
all communications are perfomed via HTTP-based transport, so it seems
quite possible to determine input and output format of client and
convert siever report into GGNFS format ( similar task was done when
integating Franke's lattice siever which now is integral part of
However, I'm not sure if such reusing will be legal :(