Commit Graph

11 Commits

Author SHA1 Message Date
Benoit Jacob
f5f45d751c Move the meta loop unrolling to a separate file, Loop.h 2007-10-01 17:07:38 +00:00
Benoit Jacob
96524fc573 Split Row and Column into separate files.
Introduce a notion of RowVector (typedef for Matriw with 1 row)
Make row() return a row vector instead of a "column vector"
Introduce operator[] to access elements of row/column vectors uniformly
Remove default arguments in operator(), these were for vectors, now use operator[] instead
2007-10-01 07:45:30 +00:00
Benoit Jacob
6015698047 Michael was right, it's best to base the unrolling limit on the product Rows*Cols. 2007-10-01 06:30:20 +00:00
Benoit Jacob
656919619f - add copyright line for Michael Olbrich
- some meta unrolling improvements
2007-10-01 06:23:05 +00:00
Benoit Jacob
e116aba444 adapt to coding style used elsewhere in eigen2 2007-10-01 04:57:51 +00:00
Michael Olbrich
2d823d8ef6 Generic loop unrolling with template metaprograms. It seems to be as fast as
manually unrolling.
TODO: decide when to stop unrolling (speed vs. code size).
      maybe only unroll one loop for larger matixes.
2007-09-30 20:38:09 +00:00
Benoit Jacob
7d41ad9d90 Get rid of a nasty const_cast by introducing a MatrixConstRef class.
Remove the __restrict__'s for now.
2007-09-29 17:27:20 +00:00
Benoit Jacob
ee63e15e2c make matrix multiplication do immediate evaluation; add lazyMul() for the old behaviour
some reorganization, especially in MatrixStorage
start playing with loop unrolling, always_inline, and __restrict__
2007-09-29 08:28:36 +00:00
Benoit Jacob
51e29ae4bd some reorganization leading to simpler expression trees 2007-09-28 11:20:29 +00:00
Benoit Jacob
835e0c9f67 Found a way to have eval() be a member function of class EiObject, instead of a global function.
CCMAIL:bensch128@yahoo.com
2007-09-28 06:10:34 +00:00
Benoit Jacob
28c44a95c2 Finish prefixing everything with "Ei" 2007-09-27 19:54:04 +00:00