diff --git a/cudablas/compute/cuda_ztpmqrt.c b/cudablas/compute/cuda_ztpmqrt.c index bf30ed6d00bbeaaa480beda73d5f2753af6b894f..459577844f61d47b12aa72a56044f38ac6d86f00 100644 --- a/cudablas/compute/cuda_ztpmqrt.c +++ b/cudablas/compute/cuda_ztpmqrt.c @@ -61,26 +61,26 @@ CUDA_ztpmqrt( MORSE_enum side, MORSE_enum trans, /* TS case */ if (L == 0) { CUDA_ztsmqr( side, trans, m1, n1, M, N, K, IB, - A, LDA, B, LDB, V, LDV, T, LDT, + A, LDA, B, LDB, V, LDV, T, LDT, WORK, ldwork, WORK + ws, ldworkc, - CUBLAS_STREAM_VALUE ); - } + CUBLAS_STREAM_VALUE ); + } /* TT case */ - else if( L == M ) { + else if( L == M ) { + // CUDA_zttmqr( side, trans, m1, n1, M, N, K, IB, + // A, LDA, B, LDB, V, LDV, T, LDT, + // WORK, ldwork ); CUDA_ztsmqr( side, trans, m1, n1, M, N, K, IB, - A, LDA, B, LDB, V, LDV, T, LDT, + A, LDA, B, LDB, V, LDV, T, LDT, WORK, ldwork, WORK + ws, ldworkc, - CUBLAS_STREAM_VALUE ); - morse_warning("The lower triangular part must be set to 0 for to be correct"); - // CUDA_zttmqr( side, trans, m1, n1, M, N, K, IB, - // A, LDA, B, LDB, V, LDV, T, LDT, - // WORK, ldwork ); - } - else { - cudablas_error(-6, "TPMQRT not available on GPU yet\n" ); - return -6; + CUBLAS_STREAM_VALUE ); + morse_warning("TPMQRT is not available on GPU yet: The lower triangular part must be set to 0 for to be correct"); + } + else { //LAPACKE_ztpmqrt_work( LAPACK_COL_MAJOR, M, N, K, L, IB, V, LDV, T, LDT, A, LDA, B, LDB, WORK ); - } + cudablas_error(-6, "TPMQRT not available on GPU yet\n" ); + return -6; + } return MORSE_SUCCESS; }