Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2004-01-22 18:24:11


Phil Richards <news_at_[hidden]> writes:

> On Tue, 20 Jan 2004 18:44:32 +0000, I wrote:
>> On Sun, 18 Jan 2004 00:19:44 -0600, Aleksey Gurtovoy wrote: [with respect
>> to my performance problems using the MPL]
>>> Sounds like something is wrong. Let's figure it out.
> [example program and results stripped]
>
> I've had a poke around with the example program and looked at the
> implementation of fold. Each of the fold statements in the example
> adds about 0.5 seconds. Very roughly,
> 0.1 seconds can be allocated to zip_view<vector2<V1, V2> >
> and the same (actually a little over 0.1 seconds) to
> begin<Sequence>::type
> end<Sequence>::type
> in the implementation of fold (parameters to aux::fold_impl).
>
> I'm going to try a non-general re-implementation of fold, and see what
> happens, but, it won't be pretty even if it is more efficient. And, of
> course, it won't be general.

The first thing to do is try an implementation of fold which doesn't
use iter_fold_if under-the-covers. It will still be general, but
there will be less code-reuse (under the covers).

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk