Could you please run 'perldl -V' and send the output. I could not reproduce the problem as I had out of memory errors at that point.
Maybe someone with a large memory 64bit OS and PDL could take a look further to debug the internals. As a work around, just loop over your large $a values by blocks small enough to run using slicing to extract the values of interest for each step. --Chris Steve Cicala wrote: > Hi--I am running perldl on a unix server with 32Gb of memory, but am having > a problem with the following operation:Here's a small version that works: > perldl> $a=sequence(5) > > perldl> $b=pdl[1,4,0] > > perldl> p $c=$a==$b->dummy > > [ > [0 1 0 0 0] > [0 0 0 0 1] > [1 0 0 0 0] > ] > (I am using this to collect indicies in a that correspond with elements in > b: > $d=which(maximum (($a==$b->dummy)->xchg(0,1))!=0) > ). > > Now, when I try to use this operation for large numbers (i.e. $a is 480000x1 > and $b is 500x1) I get: > > 'multielement piddle in a conditional expression' > > --And I get this error whether calculating $c on its own, or just sticking > the expression that generates $c into the one that generates $d. > > I have also tried: > > $c=$PDL::BIGPDL=$a==$b->dummy > > and get the same error. > > > ------------------------------------------------------------------------ > > _______________________________________________ > Perldl mailing list > [email protected] > http://mailman.jach.hawaii.edu/mailman/listinfo/perldl > > ------------------------------------------------------------------------ > > No virus found in this incoming message. > Checked by AVG. > Version: 7.5.526 / Virus Database: 270.6.21/1671 - Release Date: 9/14/2008 > 7:16 AM > _______________________________________________ Perldl mailing list [email protected] http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
