From c9788d55b910c4bd8fb6cdc7978695f6b5d97e4c Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Fri, 25 Apr 2014 11:48:22 +0200 Subject: [PATCH] Disable 3pX4 kernel on Altivec: despite this platform has 32 registers, this version seems significantly slower. --- .../Core/products/GeneralBlockPanelKernel.h | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Eigen/src/Core/products/GeneralBlockPanelKernel.h b/Eigen/src/Core/products/GeneralBlockPanelKernel.h index e76c12c39..41c46c67a 100644 --- a/Eigen/src/Core/products/GeneralBlockPanelKernel.h +++ b/Eigen/src/Core/products/GeneralBlockPanelKernel.h @@ -188,7 +188,7 @@ public: nr = 4, // register block size along the M direction (currently, this one cannot be modified) -#ifdef EIGEN_HAS_FUSED_MADD +#if defined(EIGEN_HAS_FUSED_MADD) && !defined(EIGEN_VECTORIZE_ALTIVEC) // we assume 16 registers mr = 3*LhsPacketSize, #else @@ -296,7 +296,7 @@ public: NumberOfRegisters = EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS, nr = 4, -#ifdef EIGEN_HAS_FUSED_MADD +#if defined(EIGEN_HAS_FUSED_MADD) && !defined(EIGEN_VECTORIZE_ALTIVEC) // we assume 16 registers mr = 3*LhsPacketSize, #else @@ -759,29 +759,29 @@ void gebp_kernel for(Index k=0; k // process remaining peeled loop for(Index k=peeled_kc; k