HiCMA
Hierarchical Computations on Manycore Architectures
pzhagdm.c
Go to the documentation of this file.
1 
21 /*
22  *
23  * file pzplrnt.c
24  *
25  * MORSE auxiliary routines
26  * MORSE is a software package provided by Univ. of Tennessee,
27  * Univ. of California Berkeley and Univ. of Colorado Denver
28  *
29  * version 2.5.0
30  * comment This file has been automatically generated
31  * from Plasma 2.5.0 for MORSE 1.0.0
32  * author Mathieu Faverge
33  * author Emmanuel Agullo
34  * author Cedric Castagnede
35  * date 2010-11-15
36  *
37  **/
38 #include "morse.h"
39 #include "control/common.h"
40 #include "hicma_runtime_z.h"
41 #include <stdio.h>
42 
47  MORSE_enum uplo,
48  MORSE_desc_t *Dense,
49  MORSE_sequence_t *sequence, MORSE_request_t *request )
50 {
51  MORSE_context_t *morse;
52  MORSE_option_t options;
53 
54  int m, n;
55  int tempmm, tempnn;
56 
57  morse = morse_context_self();
58  if (sequence->status != MORSE_SUCCESS)
59  return;
60  RUNTIME_options_init(&options, morse, sequence, request);
61 
62  for (m = 0; m < Dense->mt; m++) {
63  tempmm = m == Dense->mt-1 ? Dense->m-m*Dense->mb : Dense->mb;
64  int ldam = BLKLDD(Dense, m);
65 
66  //for (n = 0; n < A->mt; n++) {
67  // tempnn = n == A->mt-1 ? A->m-n*A->mb : A->mb;
68  for (n = 0; n < Dense->nt; n++) { //I hope this change does not break anything
69  tempnn = n == Dense->nt-1 ? Dense->n-n*Dense->nb : Dense->nb;
70  if(uplo == MorseLower && m < n)
71  continue;
72  else if(uplo == MorseUpper && m > n)
73  continue;
74  /*printf("%s %d: %d %d\n", __FILE__, __LINE__, m, n);*/
76  &options,
77  tempmm, tempnn,
78  Dense,
79  ldam,
80  m, n
81  );
82  }
83  }
84  RUNTIME_options_finalize(&options, morse);
85  /*MORSE_TASK_dataflush_all(); removed in newer chameleon */
86 }
92  MORSE_enum uplo,
93  MORSE_desc_t *Dense,
94  MORSE_sequence_t *sequence, MORSE_request_t *request )
95 {
96  MORSE_context_t *morse;
97  MORSE_option_t options;
98 
99  int m, n;
100  int tempmm, tempnn;
101 
102  morse = morse_context_self();
103  if (sequence->status != MORSE_SUCCESS)
104  return;
105  RUNTIME_options_init(&options, morse, sequence, request);
106 
107  for (m = 0; m < Dense->mt; m++) {
108  tempmm = m == Dense->mt-1 ? Dense->m-m*Dense->mb : Dense->mb;
109  int ldam = BLKLDD(Dense, m);
110 
111  /*printf("%s %d: %d %d\n", __FILE__, __LINE__, m, n);*/
113  &options,
114  tempmm, tempmm,
115  Dense,
116  ldam,
117  m, 0,
118  m, m //index of tile in problem
119  );
120  }
121  RUNTIME_options_finalize(&options, morse);
122  /*MORSE_TASK_dataflush_all(); removed in newer chameleon */
123 }
void HICMA_TASK_zhagdmi(const MORSE_option_t *options, int nrows_Dense, int ncols_Dense, const MORSE_desc_t *Dense, int ld_Dense, int tile_row_index, int tile_col_index, int problem_row_index, int problem_col_index)
void hicma_pzhagdmdiag(MORSE_enum uplo, MORSE_desc_t *Dense, MORSE_sequence_t *sequence, MORSE_request_t *request)
Definition: pzhagdm.c:91
void HICMA_TASK_zhagdm(const MORSE_option_t *options, int nrows_Dense, int ncols_Dense, const MORSE_desc_t *Dense, int ld_Dense, int tile_row_index, int tile_col_index)
void hicma_pzhagdm(MORSE_enum uplo, MORSE_desc_t *Dense, MORSE_sequence_t *sequence, MORSE_request_t *request)
Definition: pzhagdm.c:46
int uplo[2]