Works fine for me with the latest CVS under Fedora Core 9 (64 bits):

        perldl> $a = sequence(480000);
        perldl> $b = floor(random(500)*480000)
        perldl> $c = ($a==$b->dummy);
        Probably false alloc of over 1Gb PDL! (set $PDL::BIGPDL = 1 to enable)
        perldl> $PDL::BIGPDL = 1;
        perldl> $c = ($a==$b->dummy);
        perldl> $d = which(maximum($c->xchg(0,1))!=0);
        perldl> print $d
        [<500 integers omitted> ]
        perldl>

Cheers,
Craig

On Sep 14, 2008, at 7:40 PM, Chris Marshall wrote:

> 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
>


_______________________________________________
Perldl mailing list
[email protected]
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl

Reply via email to