![]() |
MAGMA
2.7.0
Matrix Algebra for GPU and Multicore Architectures
|
Functions | |
| void | magmablas_csetmatrix_transpose (magma_int_t m, magma_int_t n, magma_int_t nb, const magmaFloatComplex *hA, magma_int_t lda, magmaFloatComplex_ptr dAT, magma_int_t ldda, magmaFloatComplex_ptr dwork, magma_int_t lddw, magma_queue_t queues[2]) |
| Copy and transpose matrix hA on CPU host to dAT on GPU device. More... | |
| void | magmablas_csetmatrix_transpose_mgpu (magma_int_t ngpu, magma_int_t m, magma_int_t n, magma_int_t nb, const magmaFloatComplex *hA, magma_int_t lda, magmaFloatComplex_ptr dAT[], magma_int_t ldda, magmaFloatComplex_ptr dwork[], magma_int_t lddw, magma_queue_t queues[][2]) |
| Copy and transpose matrix hA on CPU host to dAT, which is distributed row block cyclic over multiple GPUs. More... | |
| void | magmablas_dsetmatrix_transpose (magma_int_t m, magma_int_t n, magma_int_t nb, const double *hA, magma_int_t lda, magmaDouble_ptr dAT, magma_int_t ldda, magmaDouble_ptr dwork, magma_int_t lddw, magma_queue_t queues[2]) |
| Copy and transpose matrix hA on CPU host to dAT on GPU device. More... | |
| void | magmablas_dsetmatrix_transpose_mgpu (magma_int_t ngpu, magma_int_t m, magma_int_t n, magma_int_t nb, const double *hA, magma_int_t lda, magmaDouble_ptr dAT[], magma_int_t ldda, magmaDouble_ptr dwork[], magma_int_t lddw, magma_queue_t queues[][2]) |
| Copy and transpose matrix hA on CPU host to dAT, which is distributed row block cyclic over multiple GPUs. More... | |
| void | magmablas_ssetmatrix_transpose (magma_int_t m, magma_int_t n, magma_int_t nb, const float *hA, magma_int_t lda, magmaFloat_ptr dAT, magma_int_t ldda, magmaFloat_ptr dwork, magma_int_t lddw, magma_queue_t queues[2]) |
| Copy and transpose matrix hA on CPU host to dAT on GPU device. More... | |
| void | magmablas_ssetmatrix_transpose_mgpu (magma_int_t ngpu, magma_int_t m, magma_int_t n, magma_int_t nb, const float *hA, magma_int_t lda, magmaFloat_ptr dAT[], magma_int_t ldda, magmaFloat_ptr dwork[], magma_int_t lddw, magma_queue_t queues[][2]) |
| Copy and transpose matrix hA on CPU host to dAT, which is distributed row block cyclic over multiple GPUs. More... | |
| void | magmablas_zsetmatrix_transpose (magma_int_t m, magma_int_t n, magma_int_t nb, const magmaDoubleComplex *hA, magma_int_t lda, magmaDoubleComplex_ptr dAT, magma_int_t ldda, magmaDoubleComplex_ptr dwork, magma_int_t lddw, magma_queue_t queues[2]) |
| Copy and transpose matrix hA on CPU host to dAT on GPU device. More... | |
| void | magmablas_zsetmatrix_transpose_mgpu (magma_int_t ngpu, magma_int_t m, magma_int_t n, magma_int_t nb, const magmaDoubleComplex *hA, magma_int_t lda, magmaDoubleComplex_ptr dAT[], magma_int_t ldda, magmaDoubleComplex_ptr dwork[], magma_int_t lddw, magma_queue_t queues[][2]) |
| Copy and transpose matrix hA on CPU host to dAT, which is distributed row block cyclic over multiple GPUs. More... | |
| void magmablas_csetmatrix_transpose | ( | magma_int_t | m, |
| magma_int_t | n, | ||
| magma_int_t | nb, | ||
| const magmaFloatComplex * | hA, | ||
| magma_int_t | lda, | ||
| magmaFloatComplex_ptr | dAT, | ||
| magma_int_t | ldda, | ||
| magmaFloatComplex_ptr | dwork, | ||
| magma_int_t | lddw, | ||
| magma_queue_t | queues[2] | ||
| ) |
Copy and transpose matrix hA on CPU host to dAT on GPU device.
| [in] | m | Number of rows of input matrix hA. m >= 0. |
| [in] | n | Number of columns of input matrix hA. n >= 0. |
| [in] | nb | Block size. nb >= 0. |
| [in] | hA | The m-by-n matrix A on the CPU, of dimension (lda,n). |
| [in] | lda | Leading dimension of matrix hA. lda >= m. |
| [out] | dAT | The n-by-m matrix A^T on the GPU, of dimension (ldda,m). |
| [in] | ldda | Leading dimension of matrix dAT. ldda >= n. |
| [out] | dwork | Workspace on the GPU, of dimension (2*lddw*nb). |
| [in] | lddw | Leading dimension of dwork. lddw >= m. |
| [in] | queues | Array of two queues, to pipeline operation. |
| void magmablas_csetmatrix_transpose_mgpu | ( | magma_int_t | ngpu, |
| magma_int_t | m, | ||
| magma_int_t | n, | ||
| magma_int_t | nb, | ||
| const magmaFloatComplex * | hA, | ||
| magma_int_t | lda, | ||
| magmaFloatComplex_ptr | dAT[], | ||
| magma_int_t | ldda, | ||
| magmaFloatComplex_ptr | dwork[], | ||
| magma_int_t | lddw, | ||
| magma_queue_t | queues[][2] | ||
| ) |
Copy and transpose matrix hA on CPU host to dAT, which is distributed row block cyclic over multiple GPUs.
| [in] | ngpu | Number of GPUs over which dAT is distributed. |
| [in] | m | Number of rows of input matrix hA. m >= 0. |
| [in] | n | Number of columns of input matrix hA. n >= 0. |
| [in] | nb | Block size. nb >= 0. |
| [out] | hA | The m-by-n matrix A on the CPU, of dimension (lda,n). |
| [in] | lda | Leading dimension of matrix hA. lda >= m. |
| [in] | dAT | Array of ngpu pointers, one per GPU, that store the disributed n-by-m matrix A^T on the GPUs, each of dimension (ldda,m). |
| [in] | ldda | Leading dimension of each matrix dAT on each GPU. ngpu*ldda >= n. |
| [out] | dwork | Array of ngpu pointers, one per GPU, that store the workspaces on each GPU, each of dimension (2*lddw*nb). |
| [in] | lddw | Leading dimension of dwork. lddw >= m. |
| [in] | queues | 2D array of dimension (ngpu,2), with two queues per GPU. |
| void magmablas_dsetmatrix_transpose | ( | magma_int_t | m, |
| magma_int_t | n, | ||
| magma_int_t | nb, | ||
| const double * | hA, | ||
| magma_int_t | lda, | ||
| magmaDouble_ptr | dAT, | ||
| magma_int_t | ldda, | ||
| magmaDouble_ptr | dwork, | ||
| magma_int_t | lddw, | ||
| magma_queue_t | queues[2] | ||
| ) |
Copy and transpose matrix hA on CPU host to dAT on GPU device.
| [in] | m | Number of rows of input matrix hA. m >= 0. |
| [in] | n | Number of columns of input matrix hA. n >= 0. |
| [in] | nb | Block size. nb >= 0. |
| [in] | hA | The m-by-n matrix A on the CPU, of dimension (lda,n). |
| [in] | lda | Leading dimension of matrix hA. lda >= m. |
| [out] | dAT | The n-by-m matrix A^T on the GPU, of dimension (ldda,m). |
| [in] | ldda | Leading dimension of matrix dAT. ldda >= n. |
| [out] | dwork | Workspace on the GPU, of dimension (2*lddw*nb). |
| [in] | lddw | Leading dimension of dwork. lddw >= m. |
| [in] | queues | Array of two queues, to pipeline operation. |
| void magmablas_dsetmatrix_transpose_mgpu | ( | magma_int_t | ngpu, |
| magma_int_t | m, | ||
| magma_int_t | n, | ||
| magma_int_t | nb, | ||
| const double * | hA, | ||
| magma_int_t | lda, | ||
| magmaDouble_ptr | dAT[], | ||
| magma_int_t | ldda, | ||
| magmaDouble_ptr | dwork[], | ||
| magma_int_t | lddw, | ||
| magma_queue_t | queues[][2] | ||
| ) |
Copy and transpose matrix hA on CPU host to dAT, which is distributed row block cyclic over multiple GPUs.
| [in] | ngpu | Number of GPUs over which dAT is distributed. |
| [in] | m | Number of rows of input matrix hA. m >= 0. |
| [in] | n | Number of columns of input matrix hA. n >= 0. |
| [in] | nb | Block size. nb >= 0. |
| [out] | hA | The m-by-n matrix A on the CPU, of dimension (lda,n). |
| [in] | lda | Leading dimension of matrix hA. lda >= m. |
| [in] | dAT | Array of ngpu pointers, one per GPU, that store the disributed n-by-m matrix A^T on the GPUs, each of dimension (ldda,m). |
| [in] | ldda | Leading dimension of each matrix dAT on each GPU. ngpu*ldda >= n. |
| [out] | dwork | Array of ngpu pointers, one per GPU, that store the workspaces on each GPU, each of dimension (2*lddw*nb). |
| [in] | lddw | Leading dimension of dwork. lddw >= m. |
| [in] | queues | 2D array of dimension (ngpu,2), with two queues per GPU. |
| void magmablas_ssetmatrix_transpose | ( | magma_int_t | m, |
| magma_int_t | n, | ||
| magma_int_t | nb, | ||
| const float * | hA, | ||
| magma_int_t | lda, | ||
| magmaFloat_ptr | dAT, | ||
| magma_int_t | ldda, | ||
| magmaFloat_ptr | dwork, | ||
| magma_int_t | lddw, | ||
| magma_queue_t | queues[2] | ||
| ) |
Copy and transpose matrix hA on CPU host to dAT on GPU device.
| [in] | m | Number of rows of input matrix hA. m >= 0. |
| [in] | n | Number of columns of input matrix hA. n >= 0. |
| [in] | nb | Block size. nb >= 0. |
| [in] | hA | The m-by-n matrix A on the CPU, of dimension (lda,n). |
| [in] | lda | Leading dimension of matrix hA. lda >= m. |
| [out] | dAT | The n-by-m matrix A^T on the GPU, of dimension (ldda,m). |
| [in] | ldda | Leading dimension of matrix dAT. ldda >= n. |
| [out] | dwork | Workspace on the GPU, of dimension (2*lddw*nb). |
| [in] | lddw | Leading dimension of dwork. lddw >= m. |
| [in] | queues | Array of two queues, to pipeline operation. |
| void magmablas_ssetmatrix_transpose_mgpu | ( | magma_int_t | ngpu, |
| magma_int_t | m, | ||
| magma_int_t | n, | ||
| magma_int_t | nb, | ||
| const float * | hA, | ||
| magma_int_t | lda, | ||
| magmaFloat_ptr | dAT[], | ||
| magma_int_t | ldda, | ||
| magmaFloat_ptr | dwork[], | ||
| magma_int_t | lddw, | ||
| magma_queue_t | queues[][2] | ||
| ) |
Copy and transpose matrix hA on CPU host to dAT, which is distributed row block cyclic over multiple GPUs.
| [in] | ngpu | Number of GPUs over which dAT is distributed. |
| [in] | m | Number of rows of input matrix hA. m >= 0. |
| [in] | n | Number of columns of input matrix hA. n >= 0. |
| [in] | nb | Block size. nb >= 0. |
| [out] | hA | The m-by-n matrix A on the CPU, of dimension (lda,n). |
| [in] | lda | Leading dimension of matrix hA. lda >= m. |
| [in] | dAT | Array of ngpu pointers, one per GPU, that store the disributed n-by-m matrix A^T on the GPUs, each of dimension (ldda,m). |
| [in] | ldda | Leading dimension of each matrix dAT on each GPU. ngpu*ldda >= n. |
| [out] | dwork | Array of ngpu pointers, one per GPU, that store the workspaces on each GPU, each of dimension (2*lddw*nb). |
| [in] | lddw | Leading dimension of dwork. lddw >= m. |
| [in] | queues | 2D array of dimension (ngpu,2), with two queues per GPU. |
| void magmablas_zsetmatrix_transpose | ( | magma_int_t | m, |
| magma_int_t | n, | ||
| magma_int_t | nb, | ||
| const magmaDoubleComplex * | hA, | ||
| magma_int_t | lda, | ||
| magmaDoubleComplex_ptr | dAT, | ||
| magma_int_t | ldda, | ||
| magmaDoubleComplex_ptr | dwork, | ||
| magma_int_t | lddw, | ||
| magma_queue_t | queues[2] | ||
| ) |
Copy and transpose matrix hA on CPU host to dAT on GPU device.
| [in] | m | Number of rows of input matrix hA. m >= 0. |
| [in] | n | Number of columns of input matrix hA. n >= 0. |
| [in] | nb | Block size. nb >= 0. |
| [in] | hA | The m-by-n matrix A on the CPU, of dimension (lda,n). |
| [in] | lda | Leading dimension of matrix hA. lda >= m. |
| [out] | dAT | The n-by-m matrix A^T on the GPU, of dimension (ldda,m). |
| [in] | ldda | Leading dimension of matrix dAT. ldda >= n. |
| [out] | dwork | Workspace on the GPU, of dimension (2*lddw*nb). |
| [in] | lddw | Leading dimension of dwork. lddw >= m. |
| [in] | queues | Array of two queues, to pipeline operation. |
| void magmablas_zsetmatrix_transpose_mgpu | ( | magma_int_t | ngpu, |
| magma_int_t | m, | ||
| magma_int_t | n, | ||
| magma_int_t | nb, | ||
| const magmaDoubleComplex * | hA, | ||
| magma_int_t | lda, | ||
| magmaDoubleComplex_ptr | dAT[], | ||
| magma_int_t | ldda, | ||
| magmaDoubleComplex_ptr | dwork[], | ||
| magma_int_t | lddw, | ||
| magma_queue_t | queues[][2] | ||
| ) |
Copy and transpose matrix hA on CPU host to dAT, which is distributed row block cyclic over multiple GPUs.
| [in] | ngpu | Number of GPUs over which dAT is distributed. |
| [in] | m | Number of rows of input matrix hA. m >= 0. |
| [in] | n | Number of columns of input matrix hA. n >= 0. |
| [in] | nb | Block size. nb >= 0. |
| [out] | hA | The m-by-n matrix A on the CPU, of dimension (lda,n). |
| [in] | lda | Leading dimension of matrix hA. lda >= m. |
| [in] | dAT | Array of ngpu pointers, one per GPU, that store the disributed n-by-m matrix A^T on the GPUs, each of dimension (ldda,m). |
| [in] | ldda | Leading dimension of each matrix dAT on each GPU. ngpu*ldda >= n. |
| [out] | dwork | Array of ngpu pointers, one per GPU, that store the workspaces on each GPU, each of dimension (2*lddw*nb). |
| [in] | lddw | Leading dimension of dwork. lddw >= m. |
| [in] | queues | 2D array of dimension (ngpu,2), with two queues per GPU. |