libflame  revision_anchor
Functions
FLA_Apply_G_rf_blk_var2.c File Reference

(r)

Functions

FLA_Error FLA_Apply_G_rf_blk_var2 (FLA_Obj G, FLA_Obj A, dim_t b_alg)
 
FLA_Error FLA_Apply_G_rf_bls_var2 (int k_G, int m_A, int n_A, scomplex *buff_G, int rs_G, int cs_G, float *buff_A, int rs_A, int cs_A, int b_alg)
 
FLA_Error FLA_Apply_G_rf_bld_var2 (int k_G, int m_A, int n_A, dcomplex *buff_G, int rs_G, int cs_G, double *buff_A, int rs_A, int cs_A, int b_alg)
 
FLA_Error FLA_Apply_G_rf_blc_var2 (int k_G, int m_A, int n_A, scomplex *buff_G, int rs_G, int cs_G, scomplex *buff_A, int rs_A, int cs_A, int b_alg)
 
FLA_Error FLA_Apply_G_rf_blz_var2 (int k_G, int m_A, int n_A, dcomplex *buff_G, int rs_G, int cs_G, dcomplex *buff_A, int rs_A, int cs_A, int b_alg)
 

Function Documentation

◆ FLA_Apply_G_rf_blc_var2()

FLA_Error FLA_Apply_G_rf_blc_var2 ( int  k_G,
int  m_A,
int  n_A,
scomplex buff_G,
int  rs_G,
int  cs_G,
scomplex buff_A,
int  rs_A,
int  cs_A,
int  b_alg 
)

References FLA_Apply_G_rf_asc_var2(), and i.

Referenced by FLA_Apply_G_rf_blk_var2().

161 {
162  int i;
163  int b = 0;
164 
165  for ( i = 0; i < m_A; i += b )
166  {
167  scomplex* A1 = buff_A + (0 )*cs_A + (i )*rs_A;
168  int m_ahead = max( 0, m_A - i );
169 
170  b = min( b_alg, m_ahead );
171 
172  //FLA_Apply_G_rf_opc_var2( k_G,
174  b,
175  n_A,
176  buff_G, rs_G, cs_G,
177  A1, rs_A, cs_A );
178  }
179 
180  return FLA_SUCCESS;
181 }
Definition: blis_type_defs.h:132
int i
Definition: bl1_axmyv2.c:145
FLA_Error FLA_Apply_G_rf_asc_var2(int k_G, int m_A, int n_A, scomplex *buff_G, int rs_G, int cs_G, scomplex *buff_A, int rs_A, int cs_A)
Definition: FLA_Apply_G_rf_asm_var2.c:339

◆ FLA_Apply_G_rf_bld_var2()

FLA_Error FLA_Apply_G_rf_bld_var2 ( int  k_G,
int  m_A,
int  n_A,
dcomplex buff_G,
int  rs_G,
int  cs_G,
double *  buff_A,
int  rs_A,
int  cs_A,
int  b_alg 
)

References FLA_Apply_G_rf_asd_var2(), and i.

Referenced by FLA_Apply_G_rf_blk_var2().

133 {
134  int i;
135  int b = 0;
136 
137  for ( i = 0; i < m_A; i += b )
138  {
139  double* A1 = buff_A + (0 )*cs_A + (i )*rs_A;
140  int m_ahead = max( 0, m_A - i );
141 
142  b = min( b_alg, m_ahead );
143 
144  //FLA_Apply_G_rf_opd_var2( k_G,
146  b,
147  n_A,
148  buff_G, rs_G, cs_G,
149  A1, rs_A, cs_A );
150  }
151 
152  return FLA_SUCCESS;
153 }
FLA_Error FLA_Apply_G_rf_asd_var2(int k_G, int m_A, int n_A, dcomplex *buff_G, int rs_G, int cs_G, double *buff_A, int rs_A, int cs_A)
Definition: FLA_Apply_G_rf_asm_var2.c:226
int i
Definition: bl1_axmyv2.c:145

◆ FLA_Apply_G_rf_blk_var2()

FLA_Error FLA_Apply_G_rf_blk_var2 ( FLA_Obj  G,
FLA_Obj  A,
dim_t  b_alg 
)

References FLA_Apply_G_rf_blc_var2(), FLA_Apply_G_rf_bld_var2(), FLA_Apply_G_rf_bls_var2(), FLA_Apply_G_rf_blz_var2(), FLA_Obj_col_stride(), FLA_Obj_datatype(), FLA_Obj_length(), FLA_Obj_row_stride(), and FLA_Obj_width().

14 {
15  FLA_Datatype datatype;
16  int k_G, m_A, n_A;
17  int rs_G, cs_G;
18  int rs_A, cs_A;
19 
20  datatype = FLA_Obj_datatype( A );
21 
22  k_G = FLA_Obj_width( G );
23  m_A = FLA_Obj_length( A );
24  n_A = FLA_Obj_width( A );
25 
26  rs_G = FLA_Obj_row_stride( G );
27  cs_G = FLA_Obj_col_stride( G );
28 
29  rs_A = FLA_Obj_row_stride( A );
30  cs_A = FLA_Obj_col_stride( A );
31 
32  switch ( datatype )
33  {
34  case FLA_FLOAT:
35  {
36  scomplex* buff_G = ( scomplex* ) FLA_COMPLEX_PTR( G );
37  float* buff_A = ( float* ) FLA_FLOAT_PTR( A );
38 
40  m_A,
41  n_A,
42  buff_G, rs_G, cs_G,
43  buff_A, rs_A, cs_A,
44  b_alg );
45 
46  break;
47  }
48 
49  case FLA_DOUBLE:
50  {
51  dcomplex* buff_G = ( dcomplex* ) FLA_DOUBLE_COMPLEX_PTR( G );
52  double* buff_A = ( double* ) FLA_DOUBLE_PTR( A );
53 
55  m_A,
56  n_A,
57  buff_G, rs_G, cs_G,
58  buff_A, rs_A, cs_A,
59  b_alg );
60 
61  break;
62  }
63 
64  case FLA_COMPLEX:
65  {
66  scomplex* buff_G = ( scomplex* ) FLA_COMPLEX_PTR( G );
67  scomplex* buff_A = ( scomplex* ) FLA_COMPLEX_PTR( A );
68 
70  m_A,
71  n_A,
72  buff_G, rs_G, cs_G,
73  buff_A, rs_A, cs_A,
74  b_alg );
75 
76  break;
77  }
78 
79  case FLA_DOUBLE_COMPLEX:
80  {
81  dcomplex* buff_G = ( dcomplex* ) FLA_DOUBLE_COMPLEX_PTR( G );
82  dcomplex* buff_A = ( dcomplex* ) FLA_DOUBLE_COMPLEX_PTR( A );
83 
85  m_A,
86  n_A,
87  buff_G, rs_G, cs_G,
88  buff_A, rs_A, cs_A,
89  b_alg );
90 
91  break;
92  }
93  }
94 
95  return FLA_SUCCESS;
96 }
dim_t FLA_Obj_row_stride(FLA_Obj obj)
Definition: FLA_Query.c:167
FLA_Error FLA_Apply_G_rf_bls_var2(int k_G, int m_A, int n_A, scomplex *buff_G, int rs_G, int cs_G, float *buff_A, int rs_A, int cs_A, int b_alg)
Definition: FLA_Apply_G_rf_blk_var2.c:99
FLA_Datatype FLA_Obj_datatype(FLA_Obj obj)
Definition: FLA_Query.c:13
dim_t FLA_Obj_width(FLA_Obj obj)
Definition: FLA_Query.c:123
FLA_Error FLA_Apply_G_rf_bld_var2(int k_G, int m_A, int n_A, dcomplex *buff_G, int rs_G, int cs_G, double *buff_A, int rs_A, int cs_A, int b_alg)
Definition: FLA_Apply_G_rf_blk_var2.c:127
Definition: blis_type_defs.h:132
FLA_Error FLA_Apply_G_rf_blz_var2(int k_G, int m_A, int n_A, dcomplex *buff_G, int rs_G, int cs_G, dcomplex *buff_A, int rs_A, int cs_A, int b_alg)
Definition: FLA_Apply_G_rf_blk_var2.c:183
int FLA_Datatype
Definition: FLA_type_defs.h:49
dim_t FLA_Obj_col_stride(FLA_Obj obj)
Definition: FLA_Query.c:174
FLA_Error FLA_Apply_G_rf_blc_var2(int k_G, int m_A, int n_A, scomplex *buff_G, int rs_G, int cs_G, scomplex *buff_A, int rs_A, int cs_A, int b_alg)
Definition: FLA_Apply_G_rf_blk_var2.c:155
dim_t FLA_Obj_length(FLA_Obj obj)
Definition: FLA_Query.c:116
Definition: blis_type_defs.h:137

◆ FLA_Apply_G_rf_bls_var2()

FLA_Error FLA_Apply_G_rf_bls_var2 ( int  k_G,
int  m_A,
int  n_A,
scomplex buff_G,
int  rs_G,
int  cs_G,
float *  buff_A,
int  rs_A,
int  cs_A,
int  b_alg 
)

References FLA_Apply_G_rf_ass_var2(), and i.

Referenced by FLA_Apply_G_rf_blk_var2().

105 {
106  int i;
107  int b = 0;
108 
109  for ( i = 0; i < m_A; i += b )
110  {
111  float* A1 = buff_A + (0 )*cs_A + (i )*rs_A;
112  int m_ahead = max( 0, m_A - i );
113 
114  b = min( b_alg, m_ahead );
115 
116  //FLA_Apply_G_rf_ops_var2( k_G,
118  b,
119  n_A,
120  buff_G, rs_G, cs_G,
121  A1, rs_A, cs_A );
122  }
123 
124  return FLA_SUCCESS;
125 }
FLA_Error FLA_Apply_G_rf_ass_var2(int k_G, int m_A, int n_A, scomplex *buff_G, int rs_G, int cs_G, float *buff_A, int rs_A, int cs_A)
Definition: FLA_Apply_G_rf_asm_var2.c:113
int i
Definition: bl1_axmyv2.c:145

◆ FLA_Apply_G_rf_blz_var2()

FLA_Error FLA_Apply_G_rf_blz_var2 ( int  k_G,
int  m_A,
int  n_A,
dcomplex buff_G,
int  rs_G,
int  cs_G,
dcomplex buff_A,
int  rs_A,
int  cs_A,
int  b_alg 
)

References FLA_Apply_G_rf_asz_var2(), and i.

Referenced by FLA_Apply_G_rf_blk_var2().

189 {
190  int i;
191  int b = 0;
192 
193  for ( i = 0; i < m_A; i += b )
194  {
195  dcomplex* A1 = buff_A + (0 )*cs_A + (i )*rs_A;
196  int m_ahead = max( 0, m_A - i );
197 
198  b = min( b_alg, m_ahead );
199 
200  //FLA_Apply_G_rf_opz_var2( k_G,
202  b,
203  n_A,
204  buff_G, rs_G, cs_G,
205  A1, rs_A, cs_A );
206  }
207 
208  return FLA_SUCCESS;
209 }
FLA_Error FLA_Apply_G_rf_asz_var2(int k_G, int m_A, int n_A, dcomplex *buff_G, int rs_G, int cs_G, dcomplex *buff_A, int rs_A, int cs_A)
Definition: FLA_Apply_G_rf_asm_var2.c:452
int i
Definition: bl1_axmyv2.c:145
Definition: blis_type_defs.h:137