Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/marian-nmt/intgemm.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Heafield <github@kheafield.com>2018-06-28 02:54:55 +0300
committerKenneth Heafield <github@kheafield.com>2018-06-28 02:54:55 +0300
commitdd41e65676a5fc00aa396cf721068d5f8cd58ae9 (patch)
treec8605011a45a89644265c19d335553f956403d6b /intgemm.h
parentd4459a2901c1df058e2cdd53be37c3e1dec8caca (diff)
Untested SelectColumnsB function
Diffstat (limited to 'intgemm.h')
-rw-r--r--intgemm.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/intgemm.h b/intgemm.h
index 1d198a8..e7ba370 100644
--- a/intgemm.h
+++ b/intgemm.h
@@ -83,6 +83,9 @@ struct Int16 {
// It will match the Multiply function on the same CPU though.
static void (*PrepareB)(const float *input, int16_t *output, float quant_mult, int rows, int cols);
+ // Select columns from a prepared B matrix. The number of selected columns must be a multiple of 8.
+ static void (*SelectColumnsB)(const int16_t *input, int16_t *output, int rows, const int *cols_begin, const int *cols_end);
+
// Multiply C = A * B, presuming A and B have been prepared.
static void (*Multiply)(const int16_t *A, const int16_t *B, float *C, float unquant_mult, int A_rows, int width, int B_cols);
@@ -114,6 +117,9 @@ struct Int8 {
// It will match the Multiply function on the same CPU though.
static void (*PrepareB)(const float *input, int8_t *output, float quant_mult, int rows, int cols);
+ // Select columns from a prepared B matrix. The number of selected columns must be a multiple of 8.
+ static void (*SelectColumnsB)(const int8_t *input, int8_t *output, int rows, const int *cols_begin, const int *cols_end);
+
// Multiply C = A * B, presuming A and B have been prepared.
static void (*Multiply)(const int8_t *A, const int8_t *B, float *C, float unquant_mult, int A_rows, int width, int B_cols);