PLASMA
2.4.5
PLASMA - Parallel Linear Algebra for Scalable Multi-core Architectures
Main Page
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
time_ssygv_tile.c
Go to the documentation of this file.
1
6
#define _TYPE float
7
#define _PREC float
8
#define _LAMCH LAPACKE_slamch_work
9
10
#define _NAME "PLASMA_ssygv_Tile"
11
/* See Lawn 41 page 120 */
12
/* cholesky + 2 trsm's + trd */
13
#define _FMULS ((2. / 3.) * ((float)N * (float)N * (float)N)) + (N * (1.0 / 6.0 * N + 0.5) * N) + 2 * (N * N * (float)((N + 1) / 2.0) )
14
#define _FADDS ((2. / 3.) * ((float)N * (float)N * (float)N)) + (N * (1.0 / 6.0 * N ) * N) + 2 * (N * N * (float)((N + 1) / 2.0) )
15
16
#include "
./timing.c
"
17
18
static
int
19
RunTest(
int
*iparam,
float
*dparam,
real_Double_t
*t_)
20
{
21
PASTE_CODE_IPARAM_LOCALS
( iparam );
22
PLASMA_desc
*descT;
23
int
itype
= 1;
24
int
vec =
PlasmaNoVec
;
25
int
uplo
=
PlasmaUpper
;
26
27
LDA =
max
(LDA, N);
28
29
/* Allocate Data */
30
PASTE_CODE_ALLOCATE_MATRIX_TILE
( descA, 1,
float
,
PlasmaRealFloat
, LDA, N, N );
31
PASTE_CODE_ALLOCATE_MATRIX_TILE
( descB, 1,
float
,
PlasmaRealFloat
, LDA, N, N );
32
PASTE_CODE_ALLOCATE_MATRIX_TILE
( descQ, (vec ==
PlasmaVec
),
float
,
PlasmaRealFloat
, LDA, N, N );
33
PASTE_CODE_ALLOCATE_MATRIX
(
W
, 1,
float
, N, 1 );
34
35
/* Initialization */
36
PLASMA_splgsy_Tile
((
float
)0.0, descA, 51 );
37
PLASMA_splgsy_Tile
((
float
)N, descB, 3753 );
38
39
/* Save AT and bT in lapack layout for check */
40
if
( check ) {
41
}
42
43
/* Allocate Workspace */
44
PLASMA_Alloc_Workspace_ssygv
(N, N, &descT);
45
46
START_TIMING
();
47
PLASMA_ssygv_Tile
( itype, vec, uplo, descA, descB,
W
, descT, descQ );
48
STOP_TIMING
();
49
50
/* Check the solution */
51
if
( check )
52
{
53
}
54
55
/* DeAllocate Workspace */
56
PLASMA_Dealloc_Handle_Tile
(&descT);
57
58
if
(vec ==
PlasmaVec
) {
59
PASTE_CODE_FREE_MATRIX
( descQ );
60
}
61
PASTE_CODE_FREE_MATRIX
( descA );
62
PASTE_CODE_FREE_MATRIX
( descB );
63
free(
W
);
64
65
return
0;
66
}
plasma_2.4.5
timing
time_ssygv_tile.c
Generated on Mon Jul 9 2012 12:45:07 for PLASMA by
1.8.1