[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: parcellfun and rand

From: Jaroslav Hajek
Subject: Re: parcellfun and rand
Date: Wed, 8 Sep 2010 09:07:41 +0200

On Tue, Sep 7, 2010 at 9:48 PM, Francesco Potortì <address@hidden> wrote:
>>> For Monte Carlo simulations, note that they are not reproducible, as the
>>> number of jobs scheduled to each process is not predictable.
>>which gives you another interesting random number generator ;-)
> Yes, with too little entropy to be useful, and too much for being
> harmless :)
>>I guess no way of making it reproducible?
> As far as I understand (the implementation is Jaroslav's, I only made
> some patches to the random number part) one would need to rewrite the
> core implementation, which is based on a first-come first-served
> criterion.  To gain reproducibility one would need to do a static
> scheduling beforhand, and assign a given list of jobs to a given process
> in a deterministic way.  I would definitely find a use for something
> like that, as I use monte Carlo myself.  Moreover, that would be a
> scheme simpler to implement with respect to the current one.

Yes, it would be simpler (even way simpler) but unfortunately less
efficient (sometimes much less). Dynamic scheduling accounts for
unequal load of the slave processes, either because of unequal cost of
jobs or because of OS's background work. With static scheduling,
everything is left to the OS, which may do a poor job. Besides, if the
cost of jobs varies, your a priori distribution of jobs may well
happen to be the worst one :(

If someone wants to make a static scheduling implementation, I'm not
opposed to it, but I myself have no need for it. The current
parcellfun code is already big enough so it should probably be an
extra function and only be called from parcellfun as a special case.

RNDr. Jaroslav Hajek, PhD
computing expert & GNU Octave developer
Aeronautical Research and Test Institute (VZLU)
Prague, Czech Republic

reply via email to

[Prev in Thread] Current Thread [Next in Thread]