From: wernsaar Date: Mon, 11 Nov 2013 14:47:56 +0000 (+0100) Subject: small optimizations on dot-kernels X-Git-Tag: v0.2.9.rc1~7^2~6^2~52 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f750103336dff5ddad6cb70177f69277b24a29a6;p=platform%2Fupstream%2Fopenblas.git small optimizations on dot-kernels --- diff --git a/kernel/arm/cdot_vfpv3.S b/kernel/arm/cdot_vfpv3.S index 2618089..b653888 100644 --- a/kernel/arm/cdot_vfpv3.S +++ b/kernel/arm/cdot_vfpv3.S @@ -26,7 +26,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *****************************************************************************/ /************************************************************************************** -* 2013/11/08 Saar +* 2013/11/11 Saar * BLASTEST : OK * CTEST : OK * TEST : OK @@ -56,7 +56,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define Y r6 #define INC_Y r7 -#define X_PRE 256 +#define X_PRE 512 /************************************************************************************** * Macro definitions diff --git a/kernel/arm/ddot_vfpv3.S b/kernel/arm/ddot_vfpv3.S index 12d9e21..ab819ec 100644 --- a/kernel/arm/ddot_vfpv3.S +++ b/kernel/arm/ddot_vfpv3.S @@ -26,7 +26,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *****************************************************************************/ /************************************************************************************** -* 2013/11/07 Saar +* 2013/11/11 Saar * BLASTEST : OK * CTEST : OK * TEST : OK @@ -56,7 +56,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define Y r6 #define INC_Y r7 -#define X_PRE 256 +#define X_PRE 512 /************************************************************************************** * Macro definitions @@ -65,14 +65,18 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .macro KERNEL_F4 pld [ X, #X_PRE ] + fldmiad X!, { d8 } pld [ Y, #X_PRE ] - fldmiad X!, { d8 - d9 } - fldmiad Y!, { d4 - d5} + fldmiad Y!, { d4 } + fldmiad Y!, { d5 } fmacd d0 , d4, d8 - fldmiad X!, { d10 - d11 } + fldmiad X!, { d9 } + fldmiad Y!, { d6 } fmacd d1 , d5, d9 - fldmiad Y!, { d6 - d7 } + fldmiad X!, { d10 } + fldmiad X!, { d11 } fmacd d0 , d6, d10 + fldmiad Y!, { d7 } fmacd d1 , d7, d11 .endm @@ -176,6 +180,12 @@ ddot_kernel_F4: KERNEL_F4 subs I, I, #1 + ble ddot_kernel_F1 + + + KERNEL_F4 + + subs I, I, #1 bne ddot_kernel_F4 ddot_kernel_F1: diff --git a/kernel/arm/sdot_vfpv3.S b/kernel/arm/sdot_vfpv3.S index 1643874..794e073 100644 --- a/kernel/arm/sdot_vfpv3.S +++ b/kernel/arm/sdot_vfpv3.S @@ -26,7 +26,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *****************************************************************************/ /************************************************************************************** -* 2013/11/07 Saar +* 2013/11/11 Saar * BLASTEST : OK * CTEST : OK (no test for dsdot) * TEST : OK (no test for dsdot) @@ -56,7 +56,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define Y r6 #define INC_Y r7 -#define X_PRE 256 +#define X_PRE 512 /************************************************************************************** * Macro definitions diff --git a/kernel/arm/zdot_vfpv3.S b/kernel/arm/zdot_vfpv3.S index 2aa9171..1a78b5a 100644 --- a/kernel/arm/zdot_vfpv3.S +++ b/kernel/arm/zdot_vfpv3.S @@ -26,7 +26,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *****************************************************************************/ /************************************************************************************** -* 2013/11/08 Saar +* 2013/11/11 Saar * BLASTEST : OK * CTEST : OK * TEST : OK @@ -56,7 +56,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define Y r6 #define INC_Y r7 -#define X_PRE 256 +#define X_PRE 512 /************************************************************************************** * Macro definitions