[Perldl] Comparing Matlab with PDL
deforest at boulder.swri.edu
Sun May 31 11:02:39 HST 2009
I'm not familiar anymore with the Matlab syntax, but I believe Gnu
Octave was intended as a work-similar replacement for it. PDL is, as
you say, aimed at "small to medium sized" tasks - defined as "smaller
than the main memory of your computer", which is a moving target. PDL
today is useful for things that, ten years ago, only supercomputers
did -- for example, recently I've been performing nonlinear fitting on
2048x2048x50 floating-point arrays, which would be considered a
"large" task not very long ago. PDL is the front end for at least one
MHD simulation code, which is more commonly the purview of "big iron"
PDL's interactive shell ("perldl") is very nice, and allows direct
user interaction with data, much the same way as Matlab, IDL, or even
Gnuplot do, though I like to think perldl is smoother going than the
It's true that PDL does not come with a GUI IDE - I'm old skool enough
not to miss it. I tend to use emacs for everything anyway. (There is
a "perl" emacs mode that does color coded grammar markup.)
Perl has lots of tools (like "closures", which will blow your mind if
you haven't heard of them before) that are not present in other data
analysis languages, but which you will miss if/when you switch back.
Lately I've been using "Inline" a lot -- "use Inline" will let you
write a little snippet of code in C or FORTRAN or even PP (the
metalanguage in which most of the PDL internals are written), and
integrate it seamlessly with the rest of your perl/PDL script.
Er, I hope that helps...
On May 31, 2009, at 9:49 AM, Gabor Szabo wrote:
> in last month I have been working at a client gluing together and
> application with perl
> where the various pieces are written in C, Java, Matlab and probably
> other thing.
> I never used Matlab before but as a Perl trainer I have often met
> people who used
> Matlab and needed Perl for various tasks.
> I never used Matlab but I know PDL should be a replacement for it - or
> at least that's
> the level of my understanding - so I wonder what are the advantages
> disadvantages of the two as compared to each other.
> Certainly price is a big difference and the fact that PDL is open
> source while Matlab
> is proprietary so I am more interested in the technical aspects.
> I searched a bit and found this article:
> which on the last page shows that PDL is twice as fast as Matlab - at
> least in that
> specific Mandelbrot example.
> I found a few hits mentioning PDL::Matlab but no actual code.
> says "[PDL is ] intended for small to medium sized analysis tasks"
> I could not find other references.
> So I am really interested you people pointing me to further references
> or giving your opinion.
> Lastly let me give my own plug:
> One aspect that I guess users of Matlab will say that PDL is lacking
> is the IDE.
> If I understand correctly Matlab is an IDE with a language. PDL is
> just the language.
> This might not be an issue for people already knowing PDL but I
> guess it
> might be harder to "sell" PDL because of this.
> So I was wondering if it would help to hook PDL up to Padre, the
> Perl IDE
> I have been developing for some time with a bunch of other people
> See http://padre.perlide.org/ .
> If anyone is interested in this I'd be glad to discuss it here or on
> the Padre
> mailing list or IRC channel.
> Perldl mailing list
> Perldl at jach.hawaii.edu
More information about the Perldl