[Nix-dev] Re: experimental -J NUM_CORES option patch / looking for reviews
Isaac Dupree
isaacdupree at charter.net
Thu Jul 17 16:27:24 CEST 2008
Peter Simons wrote:
> > If we're using the model where derivations are defined to produce a
> > set of possible results that are functionally equivalent (because we
> > can't always force everything about the build process to be
> > deterministic in result-bytes), then it doesn't necessarily make
> > sense to say "doesn't change the hash" rather than "doesn't make the
> > behavior vary any more than it does between compiles without any
> > build-modifications"?
>
> I am sorry, but I don't understand the meaning of this paragraph. Can
> you please re-iterate this point?
oh, sorry. My understanding was that derivations are already not all
deterministic. That is, (for some packages), given the same source code
and builder, the build process might produce one output (hash) one day
and a different one the next time you try it.
If that understanding is true, then it's not necessarily clear what the
meaning is of a statement that a modification such as NUM_CORES "doesn't
change the hash". -- because "the hash" wasn't even well-defined before
the addition of NUM_CORES.
This is based on the discussion of "equivalence classes" in
dolstra-thesis.pdf, section 6.4 "Semantics". ( which I apparently
downloaded from http://grosskurth.ca/bib/2006/dolstra-thesis.pdf ). I'm
not sure how valid its pessimism about determinism is in most cases though.
-Isaac
More information about the nix-dev
mailing list