On Saturday 07 May 2011 02:03 AM, Pankaj Pandey wrote:
> The recent change to move tmpx.. to _tmpx.. has caused a problem with
> parallel runs since the load balancer does not create _tmpx.. properties
> for transferred arrays as it is not pickled. Hence to fix this issues i
> think of the following ways:
>
> 1. Make _tmpx.. special and exist for all ParticleArrays
> 2. Do away with _tmp properties. Since SPHFunctions already know their
> num_outputs, the calc can verify that a correct number of arguments are
> called to the SPHCalc.sph() - no default arguments. So all output_array
> arguments have to be explicit and not beginning with '_'
Can you elaborate on 2? I thought tmpx etc. were simply temporary
arrays that were created to store temporary calculations. In this case
it makes little sense to actually send the array. Instead we should
ensure that on unpickling the temporary properties exist. So maybe on
pickle/unpickle we need to save some arrays and for the rest just save
their name and datatype and recreate on unpickle.
cheers,
prabhu
OK, so that sounds good, I think you can either check it in and notify
us so we can review the patch or maybe just post the patch so we can
discuss.
cheers,
prabhu
Looks good to me but I would defer to Kunal's opinion.
cheers,
Prabhu