From a8627e204617fc212c4f05d232208890d9d1cad6 Mon Sep 17 00:00:00 2001 From: imushir Date: Tue, 29 Dec 2015 11:55:07 +0530 Subject: added support for matrixMultiplication --- src/c/matrixOperations/multiplication/i8mulma.c | 44 +++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 src/c/matrixOperations/multiplication/i8mulma.c (limited to 'src/c/matrixOperations/multiplication/i8mulma.c') diff --git a/src/c/matrixOperations/multiplication/i8mulma.c b/src/c/matrixOperations/multiplication/i8mulma.c new file mode 100644 index 00000000..0efe797e --- /dev/null +++ b/src/c/matrixOperations/multiplication/i8mulma.c @@ -0,0 +1,44 @@ +/*SCilab2C FOSSEE IIT Bombay*/ + +/* +** \brief Compute a multiplication for int8 matrixes. +** \param in1 : input matrix. +** \param lines1 : lines of in1 matrix. +** \param columns1 : columns of in1 matrix. +** \param in2 : input arry. +** \param lines2 : lines of in2 matrix. +** \param columns2 : columns of in2 matrix. +** \param out : Matrix that contains the multiplication in1 * in2. +*/ + +// dgemm function of lapack library does not support uint8,uint16,int8 and int16 datatype so removed + +#include "matrixMultiplication.h" + +void i8mulma(int8 *in1,int lines1,int columns1, + int8 *in2,int lines2,int columns2, + int8 *out) +{ + + /* Do Not Use Any BLAS Function*/ + int i = 0; + int k = 0; + int8 accu = 0; + + /* How to convert 2 index matrixes to one. + ** #define in1(a,b) in1[a+b*lines1] + ** #define in2(c,d) in2[c+d*lines2] + */ + for(i=0;i < lines1 * columns2; ++i) + { + accu = 0; + for(k=0;k < columns1; ++k) + { + accu += in1[i % lines1 + k * lines1] * in2[k + (i / lines1) * lines2]; + + } + out[i] = accu; + + } + +} -- cgit From c8fd6991786ccddb44547b619178bb391f3f9b96 Mon Sep 17 00:00:00 2001 From: siddhu8990 Date: Thu, 18 Aug 2016 15:47:18 +0530 Subject: RPi-PWM and basic imaage processing --- src/c/matrixOperations/multiplication/i8mulma.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/c/matrixOperations/multiplication/i8mulma.c') diff --git a/src/c/matrixOperations/multiplication/i8mulma.c b/src/c/matrixOperations/multiplication/i8mulma.c index 0efe797e..4fdb203f 100644 --- a/src/c/matrixOperations/multiplication/i8mulma.c +++ b/src/c/matrixOperations/multiplication/i8mulma.c @@ -11,7 +11,7 @@ ** \param out : Matrix that contains the multiplication in1 * in2. */ -// dgemm function of lapack library does not support uint8,uint16,int8 and int16 datatype so removed +/* dgemm function of lapack library does not support uint8,uint16,int8 and int16 datatype so removed*/ #include "matrixMultiplication.h" -- cgit From 453598b49cb3d4a62b1797dbc90f0e3dd4521329 Mon Sep 17 00:00:00 2001 From: siddhu8990 Date: Wed, 19 Apr 2017 11:56:09 +0530 Subject: Copyright message updated in added files and libraries separated in 'thirdparty' folder --- src/c/matrixOperations/multiplication/i8mulma.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'src/c/matrixOperations/multiplication/i8mulma.c') diff --git a/src/c/matrixOperations/multiplication/i8mulma.c b/src/c/matrixOperations/multiplication/i8mulma.c index 4fdb203f..88f192d7 100644 --- a/src/c/matrixOperations/multiplication/i8mulma.c +++ b/src/c/matrixOperations/multiplication/i8mulma.c @@ -1,4 +1,14 @@ -/*SCilab2C FOSSEE IIT Bombay*/ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ /* ** \brief Compute a multiplication for int8 matrixes. -- cgit