Mentions légales du service

Skip to content
Snippets Groups Projects
Commit 6baa7569 authored by Mathieu Faverge's avatar Mathieu Faverge Committed by BOUCHERIE Raphael
Browse files

Fix LQ factorization when using TS trees

parent 0e57f063
No related branches found
No related tags found
1 merge request!47Integration of hierarchicah householder reduction trees
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
#define D(m,n) A, (m), (n) #define D(m,n) A, (m), (n)
#endif #endif
/** /*
* Parallel tile LQ factorization (reduction Householder) - dynamic scheduling * Parallel tile LQ factorization (reduction Householder) - dynamic scheduling
*/ */
void morse_pzgelqf_param( const libhqr_tree_t *qrtree, MORSE_desc_t *A, void morse_pzgelqf_param( const libhqr_tree_t *qrtree, MORSE_desc_t *A,
...@@ -48,7 +48,7 @@ void morse_pzgelqf_param( const libhqr_tree_t *qrtree, MORSE_desc_t *A, ...@@ -48,7 +48,7 @@ void morse_pzgelqf_param( const libhqr_tree_t *qrtree, MORSE_desc_t *A,
int k, m, n, i, p; int k, m, n, i, p;
int K; int K;
int ldak, ldam, ldap; int ldak, ldam;
int tempkmin, tempkm, tempnn, tempmm, temppn; int tempkmin, tempkm, tempnn, tempmm, temppn;
int ib; int ib;
int *tiles; int *tiles;
...@@ -131,7 +131,7 @@ void morse_pzgelqf_param( const libhqr_tree_t *qrtree, MORSE_desc_t *A, ...@@ -131,7 +131,7 @@ void morse_pzgelqf_param( const libhqr_tree_t *qrtree, MORSE_desc_t *A,
MORSE_TASK_zunmlq( MORSE_TASK_zunmlq(
&options, &options,
MorseRight, MorseConjTrans, MorseRight, MorseConjTrans,
tempmm, temppn, tempkmin, ib, TS->nb, tempmm, temppn, tempkmin, ib, TS->nb,
D( k, p), ldak, D( k, p), ldak,
TS(k, p), TS->mb, TS(k, p), TS->mb,
A( m, p), ldam); A( m, p), ldam);
...@@ -146,13 +146,13 @@ void morse_pzgelqf_param( const libhqr_tree_t *qrtree, MORSE_desc_t *A, ...@@ -146,13 +146,13 @@ void morse_pzgelqf_param( const libhqr_tree_t *qrtree, MORSE_desc_t *A,
p = qrtree->currpiv(qrtree, k, n); p = qrtree->currpiv(qrtree, k, n);
tempnn = n == A->nt-1 ? A->n-n*A->nb : A->nb; tempnn = n == A->nt-1 ? A->n-n*A->nb : A->nb;
ldap = BLKLDD(A, p);
/* Tiles killed is a TS */ /* Tiles killed is a TS */
if(qrtree->gettype(qrtree, k, n) == 0){ if(qrtree->gettype(qrtree, k, n) == 0){
MORSE_TASK_ztslqt( MORSE_TASK_ztslqt(
&options, &options,
tempkm, tempnn, ib, TS->nb, tempkm, tempnn, ib, TS->nb,
A( p, n), ldap, A( k, p), ldak,
A( k, n), ldak, A( k, n), ldak,
TS(k, n), TS->mb); TS(k, n), TS->mb);
...@@ -163,7 +163,7 @@ void morse_pzgelqf_param( const libhqr_tree_t *qrtree, MORSE_desc_t *A, ...@@ -163,7 +163,7 @@ void morse_pzgelqf_param( const libhqr_tree_t *qrtree, MORSE_desc_t *A,
&options, &options,
MorseRight, MorseConjTrans, MorseRight, MorseConjTrans,
tempmm, A->nb, tempmm, tempnn, tempkm, ib, TS->nb, tempmm, A->nb, tempmm, tempnn, tempkm, ib, TS->nb,
A( p, n), ldap, A( m, p), ldam,
A( m, n), ldam, A( m, n), ldam,
A( k, n), ldak, A( k, n), ldak,
TS(k, n), TS->mb); TS(k, n), TS->mb);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment