| 65 | |
| 66 | template<typename Ty> |
| 67 | magma_int_t magma_getrs_gpu(magma_trans_t trans, magma_int_t n, |
| 68 | magma_int_t nrhs, cl_mem dA, size_t dA_offset, |
| 69 | magma_int_t ldda, magma_int_t *ipiv, cl_mem dB, |
| 70 | size_t dB_offset, magma_int_t lddb, |
| 71 | magma_queue_t queue, magma_int_t *info) { |
| 72 | /* -- clMagma (version 0.1) -- |
| 73 | Univ. of Tennessee, Knoxville |
| 74 | Univ. of California, Berkeley |
| 75 | Univ. of Colorado, Denver |
| 76 | @date |
| 77 | |
| 78 | Purpose |
| 79 | ======= |
| 80 | Solves a system of linear equations |
| 81 | A * X = B or A' * X = B |
| 82 | with a general N-by-N matrix A using the LU factorization computed by |
| 83 | ZGETRF_GPU. |
| 84 | |
| 85 | Arguments |
| 86 | ========= |
| 87 | TRANS (input) CHARACTER*1 |
| 88 | Specifies the form of the system of equations: |
| 89 | = 'N': A * X = B (No transpose) |
| 90 | = 'T': A'* X = B (Transpose) |
| 91 | = 'C': A'* X = B (Conjugate transpose = Transpose) |
| 92 | |
| 93 | N (input) INTEGER |
| 94 | The order of the matrix A. N >= 0. |
| 95 | |
| 96 | NRHS (input) INTEGER |
| 97 | The number of right hand sides, i.e., the number of columns |
| 98 | of the matrix B. NRHS >= 0. |
| 99 | |
| 100 | A (input) COMPLEX_16 array on the GPU, dimension (LDA,N) |
| 101 | The factors L and U from the factorization A = P*L*U as computed |
| 102 | by ZGETRF_GPU. |
| 103 | |
| 104 | LDA (input) INTEGER |
| 105 | The leading dimension of the array A. LDA >= max(1,N). |
| 106 | |
| 107 | IPIV (input) INTEGER array, dimension (N) |
| 108 | The pivot indices from ZGETRF; for 1<=i<=N, row i of the |
| 109 | matrix was interchanged with row IPIV(i). |
| 110 | |
| 111 | B (input/output) COMPLEX_16 array on the GPU, dimension (LDB,NRHS) |
| 112 | On entry, the right hand side matrix B. |
| 113 | On exit, the solution matrix X. |
| 114 | |
| 115 | LDB (input) INTEGER |
| 116 | The leading dimension of the array B. LDB >= max(1,N). |
| 117 | |
| 118 | INFO (output) INTEGER |
| 119 | = 0: successful exit |
| 120 | < 0: if INFO = -i, the i-th argument had an illegal value |
| 121 | |
| 122 | HWORK (workspace) COMPLEX_16 array, dimension N*NRHS |
| 123 | ===================================================================== */ |
| 124 |
nothing calls this directly
no test coverage detected