[PPL-devel] [GIT] ppl/ppl(sparse_matrices): Replaced the algorithm used for sorting Linear_System and Bit_Matrix.
Enea Zaffanella
zaffanella at cs.unipr.it
Fri Feb 18 20:31:06 CET 2011
Module: ppl/ppl
Branch: sparse_matrices
Commit: 8adce40966f7c9aa54c2fc04dd27acac97ab1eb9
URL: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=8adce40966f7c9aa54c2fc04dd27acac97ab1eb9
Author: Enea Zaffanella <zaffanella at cs.unipr.it>
Date: Thu Feb 17 21:15:28 2011 +0100
Replaced the algorithm used for sorting Linear_System and Bit_Matrix.
The new algorithm, based on STL's std::sort and std::unique, is applied
to a vector of rows' indices and implements indirect sort using function
objects for the comparisons and swap operations.
Apart from a (usually minor) decrease in the number of comparisons and
swaps perfomed, the new algorithm should be better wrt the consumption
of stack space, by getting rid of ad-hoc sort/unique functions, as well as
the special-purpose iterator class Linear_System::With_Bit_Matrix_iterator.
---
src/Bit_Matrix.cc | 26 +++--
src/Linear_System.defs.hh | 91 ----------------
src/Linear_System.inlines.hh | 164 -----------------------------
src/Linear_System.templates.hh | 54 ++++++----
src/Swapping_Vector.defs.hh | 1 +
src/swapping_sort.icc | 226 +++++++++++++++++++++------------------
6 files changed, 172 insertions(+), 390 deletions(-)
Diff: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commitdiff;h=8adce40966f7c9aa54c2fc04dd27acac97ab1eb9
More information about the PPL-devel
mailing list