Maxima/Ecl on 32-bit machine cannot evaluate "apply(union, listify({{..}}))"
Subject: Maxima/Ecl on 32-bit machine cannot evaluate "apply(union, listify({{..}}))"
From: Oliver Kullmann
Date: Thu, 4 Sep 2008 17:29:42 +0100
> We stopped using xreduce for big unions, since for some our applications it
> > had
> > a big effect --- 5 hours instead of 1 hour where you need to do a lot of
> > experimentations
> > is not good.
> >
>
> It sounds as though we should improve the performance of xreduce. In
> particular, it ought to use apply internally up to the limit of the
> underlying implementation, to take full advantage of the underlying
> implementation while keeping the code portable. By the way, depending on
> the patterns in your data, you may also wish to try lreduce, rreduce, and
> tree_reduce; sometimes there are big differences in the performance of the
> three.
>
> l r tree
> append 7.63 0.97 0.02 -- [a,b,c] -- apply will be even faster
> union 3.28 3.12 0.18 -- {random(100)}
>
> -s
I see; I'm glad to see that something happens with the set-operations,
so I'll wait a bit what comes out of it, and then will revise my
code accordingly.
Thanks!
Oliver