GCC Code Coverage Report
Directory: . Exec Total Coverage
File: package/x86_64/haswell/gsknn.cpp Lines: 0 9 0.0 %
Date: 2019-01-14 Branches: 0 0 0.0 %

Line Exec Source
1
/**
2
 *  HMLP (High-Performance Machine Learning Primitives)
3
 *
4
 *  Copyright (C) 2014-2017, The University of Texas at Austin
5
 *
6
 *  This program is free software: you can redistribute it and/or modify
7
 *  it under the terms of the GNU General Public License as published by
8
 *  the Free Software Foundation, either version 3 of the License, or
9
 *  (at your option) any later version.
10
 *
11
 *  This program is distributed in the hope that it will be useful,
12
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
 *  GNU General Public License for more details.
15
 *
16
 *  You should have received a copy of the GNU General Public License
17
 *  along with this program. If not, see the LICENSE file.
18
 *
19
 **/
20
21
22
/** GSKNN templates */
23
#include <primitives/gsknn.hpp>
24
25
/** Haswell micro-kernels */
26
#include <rank_k_d8x6.hpp>
27
//#include <rnn_r_int_d8x4_row.hpp>
28
29
using namespace hmlp;
30
31
void gsknn
32
(
33
  int m, int n, int k, int r,
34
  double *A, double *A2, int *amap,
35
  double *B, double *B2, int *bmap,
36
  double *D,             int *I
37
)
38
{
39
  const bool USE_STRASSEN = false;
40
41
  rank_k_asm_d8x6 semiringkernel;
42
  //rnn_r_int_d8x4_row microkernel;
43
  //gsknn<
44
  //  104, 2048, 256, 8, 4,
45
  //  104, 2048,      8, 4, 32,
46
  //  USE_STRASSEN,
47
  //  rank_k_asm_d8x4,
48
  //  rnn_r_int_d8x4_row,
49
  //  double, double, double, double>
50
  //(
51
  //  m, n, k, r,
52
  //  A, A2, amap,
53
  //  B, B2, bmap,
54
  //  D,     I,
55
  //  semiringkernel, microkernel
56
  //);
57
58
  printf( "not implemented yet\n" );
59
  exit( 1 );
60
};
61
62
void gsknn
63
(
64
  int m, int n, int k, int r,
65
  float *A, float *A2, int *amap,
66
  float *B, float *B2, int *bmap,
67
  float *D,            int *I
68
)
69
{
70
  printf( "not implemented yet\n" );
71
  exit( 1 );
72
};
73
74
75
76
77
void dgsknn_ref
78
(
79
  int m, int n, int k, int r,
80
  double *A, double *A2, int *amap,
81
  double *B, double *B2, int *bmap,
82
  double *D,             int *I
83
)
84
{
85
  gsknn::gsknn_ref<double>
86
  (
87
    m, n, k, r,
88
    A, A2, amap,
89
    B, B2, bmap,
90
    D,     I
91
  );
92
}