|
Ublas : |
Subject: Re: [ublas] rvalue reference and move
From: Michael Chen (sth4nth_at_[hidden])
Date: 2010-05-22 14:22:36
Nasos,
Cool, I'd like to try your code. where can I get it?
Best,
Mo
On Sun, May 23, 2010 at 1:52 AM, Nasos Iliopoulos <nasos_i_at_[hidden]> wrote:
> Mo,
> that's why I was talking about expression expansion in the post. This could
> be performed on a dynamic manner, rather than a static manner (as
> expressions are currently implemented). Of course this is a big paradigm
> shift and unless it is thoroughly investigated ublas should probably stay
> away from it. Anyway, if somebody is interested I think I have some code
> lying around playing with r-value stuff (it needs a compiler that supports
> the new standard).
>
> Best
> Nasos.
>
>> Date: Sun, 23 May 2010 01:40:48 +0800
>> From: sth4nth_at_[hidden]
>> To: ublas_at_[hidden]
>> Subject: Re: [ublas] rvalue reference and move
>>
>> Nasos,
>> The example showed in that link does not entirely eliminate
>> temporaries. Consider the expression
>> x = (a+b)+(c+d);
>> here we construct two temporaries and one is wasted.
>>
>> However, I don't think we should re-implement the operators, since
>> those are already handled by expression template. I think only move
>> constructor and move assignment operator should be added for
>> container of uBlas.
>>
>> Best,
>> Mo
>>
>> On Sat, May 22, 2010 at 10:56 PM, Nasos Iliopoulos <nasos_i_at_[hidden]>
>> wrote:
>> > Mo,
>> > in your compile options use BOOST_UBLAS_MOVE_SEMANTICS.
>> >
>> > (i.e. in gcc that would be -DBOOST_UBLAS_MOVE_SEMANTICS)
>> >
>> > I would like to make a couple of changes in the bounded types and push
>> > the
>> > idea to make the move_semantics default, as it seems all compilers
>> > support
>> > copy elision and even if they don't there is no penalty.
>> >
>> > see also:
>> > http://www.boost.org/doc/libs/1_43_0/libs/numeric/ublas/doc/options.htm
>> >
>> > There had been some discussion in the past and I see that with the new
>> > standard we will be able to go even further in totally eliminating
>> > temporaries.
>> > Take a look at this also:
>> > http://cpp-next.com/archive/2009/09/making-your-next-move/
>> >
>> > Best
>> > Nasos
>> >
>> >> Date: Sat, 22 May 2010 15:39:08 +0800
>> >> From: sth4nth_at_[hidden]
>> >> To: ublas_at_[hidden]
>> >> Subject: [ublas] rvalue reference and move
>> >>
>> >> Since gcc 4.4 4.5 and VC2010 all support the rvalue reference, I think
>> >> it will be beneficial to utilize this feature to implement the move
>> >> semantic for those containers of uBlas. Is there any plan for this or
>> >> anyone doing this?
>> >>
>> >> Regards,
>> >> Mo
>> >> _______________________________________________
>> >> ublas mailing list
>> >> ublas_at_[hidden]
>> >> http://lists.boost.org/mailman/listinfo.cgi/ublas
>> >> Sent to: nasos_i_at_[hidden]
>> >
>> > ________________________________
>> > The New Busy is not the old busy. Search, chat and e-mail from your
>> > inbox.
>> > Get started.
>> > _______________________________________________
>> > ublas mailing list
>> > ublas_at_[hidden]
>> > http://lists.boost.org/mailman/listinfo.cgi/ublas
>> > Sent to: sth4nth_at_[hidden]
>> >
>> _______________________________________________
>> ublas mailing list
>> ublas_at_[hidden]
>> http://lists.boost.org/mailman/listinfo.cgi/ublas
>> Sent to: nasos_i_at_[hidden]
>
> ________________________________
> Hotmail has tools for the New Busy. Search, chat and e-mail from your inbox.
> Learn more.
> _______________________________________________
> ublas mailing list
> ublas_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/ublas
> Sent to: sth4nth_at_[hidden]
>