mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
look at that subtle difference in Product.h...
the cacheOptimal is only good for large enough matrices. When taking a block in a fixed-size (hence small) matrix, the SizeAtCompileTime is Dynamic hence that's not a good indicator. This example shows that the good indicator is MaxSizeAtCompileTime. Result: +10% speed in echelon.cpp
This commit is contained in:
@@ -67,8 +67,8 @@ int main(int, char **)
|
||||
// now m is still a matrix of rank N-1
|
||||
cout << "Here's the matrix m:" << endl << m << endl;
|
||||
|
||||
cout << "Now let's echelon m:" << endl;
|
||||
echelon(m);
|
||||
cout << "Now let's echelon m (repeating many times for benchmarking purposes):" << endl;
|
||||
for(int i = 0; i < 1000000; i++) echelon(m);
|
||||
|
||||
cout << "Now m is:" << endl << m << endl;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user