in reply to Re^5: Interpolating data using pdl
in thread Interpolating data using pdl

I'm able to use your solution. When I try to initiate a piddle with zeroes(5400,2700) it works fine, but zeroes(21600,10800) doesn't work. It shows an error as Probably false alloc of over 1Gb PDL! (set $PDL::BIGPDL = 1 to enable). I tried setting $PDL::BIGPDL=1, but then it crashes. How can we solve this?

Replies are listed 'Best First'.
Re^7: Interpolating data using pdl
by vr (Curate) on Mar 16, 2017 at 08:43 UTC

    zeroes(21600,10800) works for me. Are you on 32-bit OS? Then use 64-bit. If your data is going to finish as 8 bits per channel image anyway, then work with byte piddles.

    P.S. BTW, you understand, that your image will be 700 MB (uncompressed), don't you?

      PDL 2.067 removed the $PDL::BIGPDL check, because 1GB isn't big anymore. zeroes(21600,10800) has about 200,000 elements in, which for double (the default) at 8 bytes each would be about 1.6GB. float would be half that. byte would naturally be an eighth. Which to use depends on both available resources, and the needs of your application.