Boost logo

Boost :

Subject: Re: [boost] [range] Performance benchmarks?
From: Julian Gonggrijp (j.gonggrijp_at_[hidden])
Date: 2012-02-02 09:29:40


Thorsten Ottosen wrote:

> Den 02-02-2012 03:00, Dave Abrahams skrev:
>>
>> We're explicitly interested in what happens to efficiency when
>> algorithms are /implemented/ using range primitives rather than by
>> iterator increment, comparison, etc.
>>
>
> Well, the only way to answer that is by implementing Alexandrescu's range abstractions and start comparing it with BoostRange. Not trivial IMO. Then make sure that the underlyigng algorithms/loop-unrolling are exactly the same. So basically, a huge (but very interesting) work.

It's definitely not trivial, but couldn't such a library be a very
exciting addition to Boost? Not just because of the benchmarking
opportunity but because of the possibility to pioneer into potential
(far) future additions to the standard?

If "ranges as a primitive" is deemed promising enough to invest effort
into, perhaps we should try to start a joint initiative? Say, set up a
github repository, using some existing libraries like Boost.Container
as seeds, and collaborate on it with as many Boost members as can be
motivated to make a (small) contribution...

Wild ideas aside: I read Andrei Alexandrescu's slides, and I figure
not everyone might agree to what he's saying. If anyone knows about a
clever critical response, I would be most interested to hear.

For completeness, here are the slides:
http://www.uop.edu.jo/download/PdfCourses/Cplus/iterators-must-go.pdf
And here's a short article by the same author which also touches on
random access ranges:
http://www.informit.com/articles/printerfriendly.aspx?p=1407357

-Julian


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