Lines Matching refs:matstruct

1219   Mat_SeqAIJCUSPARSEMultStruct *matstruct, *matstructT;  in MatSeqAIJCUSPARSEFormExplicitTranspose()  local
1226 matstruct = (Mat_SeqAIJCUSPARSEMultStruct *)cusparsestruct->mat; in MatSeqAIJCUSPARSEFormExplicitTranspose()
1227 PetscCheck(matstruct, PETSC_COMM_SELF, PETSC_ERR_GPU, "Missing mat struct"); in MatSeqAIJCUSPARSEFormExplicitTranspose()
1237 indexBase = cusparseGetMatIndexBase(matstruct->descr); in MatSeqAIJCUSPARSEFormExplicitTranspose()
1299 …stat = cusparse_hyb2csr(cusparsestruct->handle, matstruct->descr, (cusparseHybMat_t)matstruct->mat… in MatSeqAIJCUSPARSEFormExplicitTranspose()
1341 CsrMatrix *matrix = (CsrMatrix *)matstruct->mat; in MatSeqAIJCUSPARSEFormExplicitTranspose()
1360 indexBase = cusparseGetMatIndexBase(matstruct->descr); in MatSeqAIJCUSPARSEFormExplicitTranspose()
2426 Mat_SeqAIJCUSPARSEMultStruct *matstruct = cusparsestruct->mat; in MatSeqAIJCUSPARSECopyToGPU() local
2474 matstruct = new Mat_SeqAIJCUSPARSEMultStruct; in MatSeqAIJCUSPARSECopyToGPU()
2475 PetscCallCUSPARSE(cusparseCreateMatDescr(&matstruct->descr)); in MatSeqAIJCUSPARSECopyToGPU()
2476 PetscCallCUSPARSE(cusparseSetMatIndexBase(matstruct->descr, CUSPARSE_INDEX_BASE_ZERO)); in MatSeqAIJCUSPARSECopyToGPU()
2477 PetscCallCUSPARSE(cusparseSetMatType(matstruct->descr, CUSPARSE_MATRIX_TYPE_GENERAL)); in MatSeqAIJCUSPARSECopyToGPU()
2479 PetscCallCUDA(cudaMalloc((void **)&matstruct->alpha_one, sizeof(PetscScalar))); in MatSeqAIJCUSPARSECopyToGPU()
2480 PetscCallCUDA(cudaMalloc((void **)&matstruct->beta_zero, sizeof(PetscScalar))); in MatSeqAIJCUSPARSECopyToGPU()
2481 PetscCallCUDA(cudaMalloc((void **)&matstruct->beta_one, sizeof(PetscScalar))); in MatSeqAIJCUSPARSECopyToGPU()
2482 …PetscCallCUDA(cudaMemcpy(matstruct->alpha_one, &PETSC_CUSPARSE_ONE, sizeof(PetscScalar), cudaMemcp… in MatSeqAIJCUSPARSECopyToGPU()
2483 …PetscCallCUDA(cudaMemcpy(matstruct->beta_zero, &PETSC_CUSPARSE_ZERO, sizeof(PetscScalar), cudaMemc… in MatSeqAIJCUSPARSECopyToGPU()
2484 …PetscCallCUDA(cudaMemcpy(matstruct->beta_one, &PETSC_CUSPARSE_ONE, sizeof(PetscScalar), cudaMemcpy… in MatSeqAIJCUSPARSECopyToGPU()
2503 matstruct->mat = mat; in MatSeqAIJCUSPARSECopyToGPU()
2506 …stat = cusparseCreateCsr(&matstruct->matDescr, mat->num_rows, mat->num_cols, mat->num_entries, mat… in MatSeqAIJCUSPARSECopyToGPU()
2531 … cusparse_csr2hyb(cusparsestruct->handle, mat->num_rows, mat->num_cols, matstruct->descr, mat->val… in MatSeqAIJCUSPARSECopyToGPU()
2534 matstruct->mat = hybMat; in MatSeqAIJCUSPARSECopyToGPU()
2548 PetscCallCXX(matstruct->cprowIndices = new THRUSTINTARRAY(m)); in MatSeqAIJCUSPARSECopyToGPU()
2549 matstruct->cprowIndices->assign(ridx, ridx + m); in MatSeqAIJCUSPARSECopyToGPU()
2553 matstruct->cprowIndices = NULL; in MatSeqAIJCUSPARSECopyToGPU()
2559 cusparsestruct->mat = matstruct; in MatSeqAIJCUSPARSECopyToGPU()
3559 Mat_SeqAIJCUSPARSEMultStruct *matstruct; in MatMultAddKernel_SeqAIJCUSPARSE() local
3577 matstruct = (Mat_SeqAIJCUSPARSEMultStruct *)cusparsestruct->mat; in MatMultAddKernel_SeqAIJCUSPARSE()
3578 …PetscCheck(matstruct, PetscObjectComm((PetscObject)A), PETSC_ERR_GPU, "SeqAIJCUSPARSE does not hav… in MatMultAddKernel_SeqAIJCUSPARSE()
3582 matstruct = (Mat_SeqAIJCUSPARSEMultStruct *)cusparsestruct->mat; in MatMultAddKernel_SeqAIJCUSPARSE()
3585 matstruct = (Mat_SeqAIJCUSPARSEMultStruct *)cusparsestruct->matTranspose; in MatMultAddKernel_SeqAIJCUSPARSE()
3589 compressed = matstruct->cprowIndices ? PETSC_TRUE : PETSC_FALSE; in MatMultAddKernel_SeqAIJCUSPARSE()
3604 beta = (yy == zz && !compressed) ? matstruct->beta_one : matstruct->beta_zero; in MatMultAddKernel_SeqAIJCUSPARSE()
3610 CsrMatrix *mat = (CsrMatrix *)matstruct->mat; in MatMultAddKernel_SeqAIJCUSPARSE()
3622 beta = yy ? matstruct->beta_one : matstruct->beta_zero; in MatMultAddKernel_SeqAIJCUSPARSE()
3630 …rsestruct->workVector->begin(), thrust::make_permutation_iterator(xarr, matstruct->cprowIndices->b… in MatMultAddKernel_SeqAIJCUSPARSE()
3631 …or->begin(), thrust::make_permutation_iterator(xarr, matstruct->cprowIndices->begin()))) + matstru… in MatMultAddKernel_SeqAIJCUSPARSE()
3635 CsrMatrix *mat = (CsrMatrix *)matstruct->mat; in MatMultAddKernel_SeqAIJCUSPARSE()
3646 …cusparseSpMatDescr_t &matDescr = matstruct->matDescr_SpMV[opA]; // All opA's should use the same m… in MatMultAddKernel_SeqAIJCUSPARSE()
3648 cusparseSpMatDescr_t &matDescr = matstruct->matDescr; in MatMultAddKernel_SeqAIJCUSPARSE()
3654 CsrMatrix *mat = (CsrMatrix *)matstruct->mat; in MatMultAddKernel_SeqAIJCUSPARSE()
3659 if (!matstruct->cuSpMV[opA].initialized) { /* built on demand */ in MatMultAddKernel_SeqAIJCUSPARSE()
3660 …PetscCallCUSPARSE(cusparseCreateDnVec(&matstruct->cuSpMV[opA].vecXDescr, nx, xptr, cusparse_scalar… in MatMultAddKernel_SeqAIJCUSPARSE()
3661 …PetscCallCUSPARSE(cusparseCreateDnVec(&matstruct->cuSpMV[opA].vecYDescr, ny, dptr, cusparse_scalar… in MatMultAddKernel_SeqAIJCUSPARSE()
3663matstruct->alpha_one, matDescr, matstruct->cuSpMV[opA].vecXDescr, beta, matstruct->cuSpMV[opA].vec… in MatMultAddKernel_SeqAIJCUSPARSE()
3664 …PetscCallCUDA(cudaMalloc(&matstruct->cuSpMV[opA].spmvBuffer, matstruct->cuSpMV[opA].spmvBufferSize… in MatMultAddKernel_SeqAIJCUSPARSE()
3667matstruct->alpha_one, matDescr, matstruct->cuSpMV[opA].vecXDescr, beta, matstruct->cuSpMV[opA].vec… in MatMultAddKernel_SeqAIJCUSPARSE()
3669 matstruct->cuSpMV[opA].initialized = PETSC_TRUE; in MatMultAddKernel_SeqAIJCUSPARSE()
3672 PetscCallCUSPARSE(cusparseDnVecSetValues(matstruct->cuSpMV[opA].vecXDescr, xptr)); in MatMultAddKernel_SeqAIJCUSPARSE()
3673 PetscCallCUSPARSE(cusparseDnVecSetValues(matstruct->cuSpMV[opA].vecYDescr, dptr)); in MatMultAddKernel_SeqAIJCUSPARSE()
3676matstruct->alpha_one, matDescr, matstruct->cuSpMV[opA].vecXDescr, beta, matstruct->cuSpMV[opA].vec… in MatMultAddKernel_SeqAIJCUSPARSE()
3678 CsrMatrix *mat = (CsrMatrix *)matstruct->mat; in MatMultAddKernel_SeqAIJCUSPARSE()
3679 …handle, opA, mat->num_rows, mat->num_cols, mat->num_entries, matstruct->alpha_one, matstruct->desc… in MatMultAddKernel_SeqAIJCUSPARSE()
3686 cusparseHybMat_t hybMat = (cusparseHybMat_t)matstruct->mat; in MatMultAddKernel_SeqAIJCUSPARSE()
3687 …cCallCUSPARSE(cusparse_hyb_spmv(cusparsestruct->handle, opA, matstruct->alpha_one, matstruct->desc… in MatMultAddKernel_SeqAIJCUSPARSE()
3707 PetscInt n = (PetscInt)matstruct->cprowIndices->size(); in MatMultAddKernel_SeqAIJCUSPARSE()
3708 …ScatterAdd<<<(int)((n + 255) / 256), 256, 0, PetscDefaultCudaStream>>>(n, matstruct->cprowIndices-… in MatMultAddKernel_SeqAIJCUSPARSE()
3758 …Mat_SeqAIJCUSPARSEMultStruct *matstruct = (Mat_SeqAIJCUSPARSEMultStruct *)cusparsestruct->mat; in MatGetDiagonal_SeqAIJCUSPARSE() local
3764 CsrMatrix *mat = (CsrMatrix *)matstruct->mat; in MatGetDiagonal_SeqAIJCUSPARSE()
4224 static PetscErrorCode MatSeqAIJCUSPARSEMultStruct_Destroy(Mat_SeqAIJCUSPARSEMultStruct **matstruct,… in MatSeqAIJCUSPARSEMultStruct_Destroy() argument
4229 if (*matstruct) { in MatSeqAIJCUSPARSEMultStruct_Destroy()
4230 if ((*matstruct)->mat) { in MatSeqAIJCUSPARSEMultStruct_Destroy()
4235 cusparseHybMat_t hybMat = (cusparseHybMat_t)(*matstruct)->mat; in MatSeqAIJCUSPARSEMultStruct_Destroy()
4239 mat = (CsrMatrix *)(*matstruct)->mat; in MatSeqAIJCUSPARSEMultStruct_Destroy()
4243 if ((*matstruct)->descr) PetscCallCUSPARSE(cusparseDestroyMatDescr((*matstruct)->descr)); in MatSeqAIJCUSPARSEMultStruct_Destroy()
4244 delete (*matstruct)->cprowIndices; in MatSeqAIJCUSPARSEMultStruct_Destroy()
4245 if ((*matstruct)->alpha_one) PetscCallCUDA(cudaFree((*matstruct)->alpha_one)); in MatSeqAIJCUSPARSEMultStruct_Destroy()
4246 if ((*matstruct)->beta_zero) PetscCallCUDA(cudaFree((*matstruct)->beta_zero)); in MatSeqAIJCUSPARSEMultStruct_Destroy()
4247 if ((*matstruct)->beta_one) PetscCallCUDA(cudaFree((*matstruct)->beta_one)); in MatSeqAIJCUSPARSEMultStruct_Destroy()
4250 Mat_SeqAIJCUSPARSEMultStruct *mdata = *matstruct; in MatSeqAIJCUSPARSEMultStruct_Destroy()
4265 delete *matstruct; in MatSeqAIJCUSPARSEMultStruct_Destroy()
4266 *matstruct = NULL; in MatSeqAIJCUSPARSEMultStruct_Destroy()