bug #1615: slightly increase the default unrolling limit to compensate for changeset 101ea26f5e18919972b321b5f7e3ef4e07be3fd6

.
This solves a performance regression with clang and 3x3 matrix products.
This commit is contained in:
Gael Guennebaud 2018-12-13 10:42:39 +01:00
parent f20c991679
commit efa4c9c40f
2 changed files with 2 additions and 2 deletions

View File

@ -21,7 +21,7 @@
* it does not correspond to the number of iterations or the number of instructions
*/
#ifndef EIGEN_UNROLLING_LIMIT
#define EIGEN_UNROLLING_LIMIT 100
#define EIGEN_UNROLLING_LIMIT 110
#endif
/** Defines the threshold between a "small" and a "large" matrix.

View File

@ -117,7 +117,7 @@ run time. However, these assertions do cost time and can thus be turned off.
Define it to 0 to disable.
- \b \c EIGEN_UNROLLING_LIMIT - defines the size of a loop to enable meta unrolling. Set it to zero to disable
unrolling. The size of a loop here is expressed in %Eigen's own notion of "number of FLOPS", it does not
correspond to the number of iterations or the number of instructions. The default is value 100.
correspond to the number of iterations or the number of instructions. The default is value 110.
- \b \c EIGEN_STACK_ALLOCATION_LIMIT - defines the maximum bytes for a buffer to be allocated on the stack. For internal
temporary buffers, dynamic memory allocation is employed as a fall back. For fixed-size matrices or arrays, exceeding
this threshold raises a compile time assertion. Use 0 to set no limit. Default is 128 KB.