PLASMA  2.4.5
PLASMA - Parallel Linear Algebra for Scalable Multi-core Architectures
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
time_zgebrd_tile.c
Go to the documentation of this file.
1 
6 #define _TYPE PLASMA_Complex64_t
7 #define _PREC double
8 #define _LAMCH LAPACKE_dlamch_work
9 
10 #define _NAME "PLASMA_zgebrd_Tile"
11 /* See Lawn 41 page 120 */
12 #define _FMULS FMULS_GEBRD( N, N )
13 #define _FADDS FADDS_GEBRD( N, N )
14 
15 #include "./timing.c"
16 
17 static int
18 RunTest(int *iparam, double *dparam, real_Double_t *t_)
19 {
20  PASTE_CODE_IPARAM_LOCALS( iparam );
21  PLASMA_desc *descT;
22  int vec = PlasmaNoVec;
23 
24  /* Allocate Data */
26  PASTE_CODE_ALLOCATE_MATRIX( W, 1, double, N, 1 );
28 
29  /* Initialiaze Data */
30  PLASMA_zplghe_Tile((double)0.0, descA, 51 );
31 
32  /* Save AT and bT in lapack layout for check */
33  if ( check ) {
34  }
35 
36  /* Allocate Workspace */
37  PLASMA_Alloc_Workspace_zgesvd(N, N, &descT);
38 
39  START_TIMING();
40  PLASMA_zgesvd_Tile( vec, vec, descA, W, descQ, descQ, descT );
41  STOP_TIMING();
42 
43  /* Check the solution */
44  if ( check )
45  {
46  }
47 
48  /* DeAllocate Workspace */
50 
51  if (vec == PlasmaVec) {
52  PASTE_CODE_FREE_MATRIX( descQ );
53  }
54  PASTE_CODE_FREE_MATRIX( descA );
55  free( W );
56 
57  return 0;
58 }