
Seven, thanks a lot for pointing it out. That was a classical error!! :( Anyway I re-ran the test, with corrected accumulate calls: corrected calls: array_type::value_type sum_carr_accumulate(array_type const& a) { return std::accumulate(a.begin(), a.end(), 0.0); } array_type::value_type sum_arr_copy_accumulate(array_type const& a) { return std::accumulate(a.begin(), a.end(), 0.0); } Results (which would be expected from std lib ;) Running each test 4294967295 of times: -------------------------- sum_arr_copy 64.79 s result: 2.84756e+10 -------------------------- sum_carr 14.91 s result: 2.84756e+10 -------------------------- sum_arr_copy_accumulate 14.91 s result: 2.84756e+10 -------------------------- sum_carr_temp_result 14.91 s result: 2.84756e+10 -------------------------- sum_carr_accumulate 14.91 s result: 2.84756e+10 -------------------------- sum_doubles_copy 15.00 s result: 2.84756e+10 -------------------------- sum_doubles_copy_optimized 14.96 s result: 2.84756e+10 -------------------------- sum_doubles_copy_temp_result 14.92 s result: 2.84756e+10 -------------------------- sum_doubles_ref_temp_result 14.97 s result: 2.84756e+10 tests done Regards, Ovanes On Jan 29, 2008 5:42 AM, Steven Watanabe <watanabesj@gmail.com> wrote:
AMDG
Ovanes Markarian wrote:
array_type::value_type sum_carr_accumulate(array_type const& a) { return std::accumulate(a.begin(), a.end(), 0); }
array_type::value_type sum_arr_copy_accumulate(array_type const& a) { return std::accumulate(a.begin(), a.end(), 0); }
Please take a look, that accumulate produced wrong result.
Of course. The results are being collected in an int...
In Christ, Steven Watanabe
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users