Lines Matching refs:fs
1249 Mat_SeqAIJHIPSPARSETriFactors *fs = (Mat_SeqAIJHIPSPARSETriFactors *)fact->spptr; in MatSolve_SeqAIJHIPSPARSE_ILU0() local
1260 PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_X, (void *)barray)); in MatSolve_SeqAIJHIPSPARSE_ILU0()
1261 PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_Y, fs->Y)); in MatSolve_SeqAIJHIPSPARSE_ILU0()
1263 …PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSP… in MatSolve_SeqAIJHIPSPARSE_ILU0()
1264 …fs->dnVecDescr_X, fs->dnVecDescr_Y, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDesc… in MatSolve_SeqAIJHIPSPARSE_ILU0()
1266 …PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSP… in MatSolve_SeqAIJHIPSPARSE_ILU0()
1267 …fs->dnVecDescr_X, fs->dnVecDescr_Y, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDesc… in MatSolve_SeqAIJHIPSPARSE_ILU0()
1270 PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_X, xarray)); in MatSolve_SeqAIJHIPSPARSE_ILU0()
1272 …PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSP… in MatSolve_SeqAIJHIPSPARSE_ILU0()
1273 …fs->dnVecDescr_Y, fs->dnVecDescr_X, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDesc… in MatSolve_SeqAIJHIPSPARSE_ILU0()
1275 …PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSP… in MatSolve_SeqAIJHIPSPARSE_ILU0()
1276 …fs->dnVecDescr_Y, fs->dnVecDescr_X, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDesc… in MatSolve_SeqAIJHIPSPARSE_ILU0()
1288 Mat_SeqAIJHIPSPARSETriFactors *fs = (Mat_SeqAIJHIPSPARSETriFactors *)fact->spptr; in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0() local
1294 if (!fs->createdTransposeSpSVDescr) { /* Call MatSolveTranspose() for the first time */ in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1295 PetscCallHIPSPARSE(hipsparseSpSV_createDescr(&fs->spsvDescr_Lt)); in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1296 …etscCallHIPSPARSE(hipsparseSpSV_bufferSize(fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSP… in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1297 …fs->dnVecDescr_X, fs->dnVecDescr_Y, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDesc… in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1299 PetscCallHIPSPARSE(hipsparseSpSV_createDescr(&fs->spsvDescr_Ut)); in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1300 …fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_U, fs->dnVecDescr_… in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1301 PetscCallHIP(hipMalloc((void **)&fs->spsvBuffer_Lt, fs->spsvBufferSize_Lt)); in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1302 PetscCallHIP(hipMalloc((void **)&fs->spsvBuffer_Ut, fs->spsvBufferSize_Ut)); in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1303 fs->createdTransposeSpSVDescr = PETSC_TRUE; in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1306 if (!fs->updatedTransposeSpSVAnalysis) { in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1307 …fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_L, fs->dnVecDescr_… in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1309 …fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_U, fs->dnVecDescr_… in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1310 fs->updatedTransposeSpSVAnalysis = PETSC_TRUE; in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1318 PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_X, (void *)barray)); in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1319 PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_Y, fs->Y)); in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1321 …PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE… in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1322 …fs->dnVecDescr_X, fs->dnVecDescr_Y, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDesc… in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1324 …PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE… in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1325 …fs->dnVecDescr_X, fs->dnVecDescr_Y, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDesc… in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1328 PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_X, xarray)); in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1330 …PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE… in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1331 …fs->dnVecDescr_Y, fs->dnVecDescr_X, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDesc… in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1333 …PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE… in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1334 …fs->dnVecDescr_Y, fs->dnVecDescr_X, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDesc… in MatSolveTranspose_SeqAIJHIPSPARSE_ILU0()
1345 Mat_SeqAIJHIPSPARSETriFactors *fs = (Mat_SeqAIJHIPSPARSETriFactors *)fact->spptr; in MatILUFactorNumeric_SeqAIJHIPSPARSE_ILU0() local
1363 …PetscCallHIP(hipMemcpyAsync(fs->csrVal, Acsr->values->data().get(), sizeof(PetscScalar) * nz, hipM… in MatILUFactorNumeric_SeqAIJHIPSPARSE_ILU0()
1367 …PetscCallHIPSPARSE(hipsparseXcsrilu02(fs->handle, m, nz, /* hipsparseXcsrilu02 errors out with emp… in MatILUFactorNumeric_SeqAIJHIPSPARSE_ILU0()
1368 …fs->matDescr_M, fs->csrVal, fs->csrRowPtr, fs->csrColIdx, fs->ilu0Info_M, fs->policy_M, fs->factBu… in MatILUFactorNumeric_SeqAIJHIPSPARSE_ILU0()
1372 status = hipsparseXcsrilu02_zeroPivot(fs->handle, fs->ilu0Info_M, &numerical_zero); in MatILUFactorNumeric_SeqAIJHIPSPARSE_ILU0()
1377 …fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_L, fs->dnVecDe… in MatILUFactorNumeric_SeqAIJHIPSPARSE_ILU0()
1379 …fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_U, fs->dnVecDe… in MatILUFactorNumeric_SeqAIJHIPSPARSE_ILU0()
1382 fs->updatedTransposeSpSVAnalysis = PETSC_FALSE; in MatILUFactorNumeric_SeqAIJHIPSPARSE_ILU0()
1389 PetscCall(PetscLogGpuFlops(fs->numericFactFlops)); in MatILUFactorNumeric_SeqAIJHIPSPARSE_ILU0()
1395 Mat_SeqAIJHIPSPARSETriFactors *fs = (Mat_SeqAIJHIPSPARSETriFactors *)fact->spptr; in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0() local
1411 PetscCall(MatSeqAIJHIPSPARSETriFactors_Reset(&fs)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1436 PetscCallHIP(hipMalloc((void **)&fs->csrRowPtr, sizeof(int) * (m + 1))); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1437 PetscCallHIP(hipMalloc((void **)&fs->csrColIdx, sizeof(int) * nz)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1438 PetscCallHIP(hipMalloc((void **)&fs->csrVal, sizeof(PetscScalar) * nz)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1440 …PetscCallHIP(hipMemcpyAsync(fs->csrRowPtr, Ai, sizeof(int) * (m + 1), hipMemcpyDeviceToDevice, Pet… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1441 …PetscCallHIP(hipMemcpyAsync(fs->csrColIdx, Aj, sizeof(int) * nz, hipMemcpyDeviceToDevice, PetscDef… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1449 PetscCallHIPSPARSE(hipsparseCreateMatDescr(&fs->matDescr_M)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1450 PetscCallHIPSPARSE(hipsparseSetMatIndexBase(fs->matDescr_M, HIPSPARSE_INDEX_BASE_ZERO)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1451 PetscCallHIPSPARSE(hipsparseSetMatType(fs->matDescr_M, HIPSPARSE_MATRIX_TYPE_GENERAL)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1461 …PetscCallHIPSPARSE(hipsparseCreateCsr(&fs->spMatDescr_L, m, m, nz, fs->csrRowPtr, fs->csrColIdx, f… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1462 …PetscCallHIPSPARSE(hipsparseSpMatSetAttribute(fs->spMatDescr_L, HIPSPARSE_SPMAT_FILL_MODE, &fillMo… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1463 …PetscCallHIPSPARSE(hipsparseSpMatSetAttribute(fs->spMatDescr_L, HIPSPARSE_SPMAT_DIAG_TYPE, &diagTy… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1467 …PetscCallHIPSPARSE(hipsparseCreateCsr(&fs->spMatDescr_U, m, m, nz, fs->csrRowPtr, fs->csrColIdx, f… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1468 …PetscCallHIPSPARSE(hipsparseSpMatSetAttribute(fs->spMatDescr_U, HIPSPARSE_SPMAT_FILL_MODE, &fillMo… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1469 …PetscCallHIPSPARSE(hipsparseSpMatSetAttribute(fs->spMatDescr_U, HIPSPARSE_SPMAT_DIAG_TYPE, &diagTy… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1474 PetscCallHIPSPARSE(hipsparseCreateCsrilu02Info(&fs->ilu0Info_M)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1476 …PetscCallHIPSPARSE(hipsparseXcsrilu02_bufferSize(fs->handle, m, nz, /* hipsparseXcsrilu02 errors o… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1477 … fs->matDescr_M, fs->csrVal, fs->csrRowPtr, fs->csrColIdx, fs->ilu0Info_M, &fs->factBufferSize_M)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1479 PetscCallHIP(hipMalloc((void **)&fs->X, sizeof(PetscScalar) * m)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1480 PetscCallHIP(hipMalloc((void **)&fs->Y, sizeof(PetscScalar) * m)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1482 PetscCallHIPSPARSE(hipsparseCreateDnVec(&fs->dnVecDescr_X, m, fs->X, hipsparse_scalartype)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1483 PetscCallHIPSPARSE(hipsparseCreateDnVec(&fs->dnVecDescr_Y, m, fs->Y, hipsparse_scalartype)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1485 PetscCallHIPSPARSE(hipsparseSpSV_createDescr(&fs->spsvDescr_L)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1486 …fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_L, fs->dnVecDe… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1488 PetscCallHIPSPARSE(hipsparseSpSV_createDescr(&fs->spsvDescr_U)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1489 …fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_U, fs->dnVecDe… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1494 if (fs->spsvBufferSize_L > fs->spsvBufferSize_U) { in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1495 …PetscCallHIP(hipMalloc((void **)&fs->factBuffer_M, PetscMax(fs->spsvBufferSize_L, (size_t)fs->fact… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1496 fs->spsvBuffer_L = fs->factBuffer_M; in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1497 PetscCallHIP(hipMalloc((void **)&fs->spsvBuffer_U, fs->spsvBufferSize_U)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1499 …PetscCallHIP(hipMalloc((void **)&fs->factBuffer_M, PetscMax(fs->spsvBufferSize_U, (size_t)fs->fact… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1500 fs->spsvBuffer_U = fs->factBuffer_M; in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1501 PetscCallHIP(hipMalloc((void **)&fs->spsvBuffer_L, fs->spsvBufferSize_L)); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1510 fs->policy_M = HIPSPARSE_SOLVE_POLICY_USE_LEVEL; in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1512 …PetscCallHIPSPARSE(hipsparseXcsrilu02_analysis(fs->handle, m, nz, /* hipsparseXcsrilu02 errors out… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1513 …fs->matDescr_M, fs->csrVal, fs->csrRowPtr, fs->csrColIdx, fs->ilu0Info_M, fs->policy_M, fs->factBu… in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1517 status = hipsparseXcsrilu02_zeroPivot(fs->handle, fs->ilu0Info_M, &structural_zero); in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1541 fs->numericFactFlops = flops; in MatILUFactorSymbolic_SeqAIJHIPSPARSE_ILU0()
1549 Mat_SeqAIJHIPSPARSETriFactors *fs = (Mat_SeqAIJHIPSPARSETriFactors *)fact->spptr; in MatSolve_SeqAIJHIPSPARSE_ICC0() local
1560 PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_X, (void *)barray)); in MatSolve_SeqAIJHIPSPARSE_ICC0()
1561 PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_Y, fs->Y)); in MatSolve_SeqAIJHIPSPARSE_ICC0()
1563 …PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSP… in MatSolve_SeqAIJHIPSPARSE_ICC0()
1564 …fs->dnVecDescr_X, fs->dnVecDescr_Y, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDesc… in MatSolve_SeqAIJHIPSPARSE_ICC0()
1566 …PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSP… in MatSolve_SeqAIJHIPSPARSE_ICC0()
1567 …fs->dnVecDescr_X, fs->dnVecDescr_Y, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDesc… in MatSolve_SeqAIJHIPSPARSE_ICC0()
1570 PetscCallHIPSPARSE(hipsparseDnVecSetValues(fs->dnVecDescr_X, xarray)); in MatSolve_SeqAIJHIPSPARSE_ICC0()
1572 …PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE… in MatSolve_SeqAIJHIPSPARSE_ICC0()
1573 …fs->dnVecDescr_Y, fs->dnVecDescr_X, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDesc… in MatSolve_SeqAIJHIPSPARSE_ICC0()
1575 …PetscCallHIPSPARSE(hipsparseSpSV_solve(fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE… in MatSolve_SeqAIJHIPSPARSE_ICC0()
1576 …fs->dnVecDescr_Y, fs->dnVecDescr_X, hipsparse_scalartype, HIPSPARSE_SPSV_ALG_DEFAULT, fs->spsvDesc… in MatSolve_SeqAIJHIPSPARSE_ICC0()
1588 Mat_SeqAIJHIPSPARSETriFactors *fs = (Mat_SeqAIJHIPSPARSETriFactors *)fact->spptr; in MatICCFactorNumeric_SeqAIJHIPSPARSE_ICC0() local
1606 …PetscCallHIP(hipMemcpyAsync(fs->csrVal, Acsr->values->data().get(), sizeof(PetscScalar) * nz, hipM… in MatICCFactorNumeric_SeqAIJHIPSPARSE_ICC0()
1614 …RSE(hipsparseXcsric02(fs->handle, m, nz, fs->matDescr_M, fs->csrVal, fs->csrRowPtr, fs->csrColIdx,… in MatICCFactorNumeric_SeqAIJHIPSPARSE_ICC0()
1618 status = hipsparseXcsric02_zeroPivot(fs->handle, fs->ic0Info_M, &numerical_zero); in MatICCFactorNumeric_SeqAIJHIPSPARSE_ICC0()
1622 …fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_L, fs->dnVecDe… in MatICCFactorNumeric_SeqAIJHIPSPARSE_ICC0()
1627 …fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_L, fs->dnVecDescr_… in MatICCFactorNumeric_SeqAIJHIPSPARSE_ICC0()
1634 PetscCall(PetscLogGpuFlops(fs->numericFactFlops)); in MatICCFactorNumeric_SeqAIJHIPSPARSE_ICC0()
1640 Mat_SeqAIJHIPSPARSETriFactors *fs = (Mat_SeqAIJHIPSPARSETriFactors *)fact->spptr; in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0() local
1656 PetscCall(MatSeqAIJHIPSPARSETriFactors_Reset(&fs)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1681 PetscCallHIP(hipMalloc((void **)&fs->csrRowPtr, sizeof(int) * (m + 1))); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1682 PetscCallHIP(hipMalloc((void **)&fs->csrColIdx, sizeof(int) * nz)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1683 PetscCallHIP(hipMalloc((void **)&fs->csrVal, sizeof(PetscScalar) * nz)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1685 …PetscCallHIP(hipMemcpyAsync(fs->csrRowPtr, Ai, sizeof(int) * (m + 1), hipMemcpyDeviceToDevice, Pet… in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1686 …PetscCallHIP(hipMemcpyAsync(fs->csrColIdx, Aj, sizeof(int) * nz, hipMemcpyDeviceToDevice, PetscDef… in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1694 PetscCallHIPSPARSE(hipsparseCreateMatDescr(&fs->matDescr_M)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1695 PetscCallHIPSPARSE(hipsparseSetMatIndexBase(fs->matDescr_M, HIPSPARSE_INDEX_BASE_ZERO)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1696 PetscCallHIPSPARSE(hipsparseSetMatType(fs->matDescr_M, HIPSPARSE_MATRIX_TYPE_GENERAL)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1706 …PetscCallHIPSPARSE(hipsparseCreateCsr(&fs->spMatDescr_L, m, m, nz, fs->csrRowPtr, fs->csrColIdx, f… in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1707 …PetscCallHIPSPARSE(hipsparseSpMatSetAttribute(fs->spMatDescr_L, HIPSPARSE_SPMAT_FILL_MODE, &fillMo… in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1708 …PetscCallHIPSPARSE(hipsparseSpMatSetAttribute(fs->spMatDescr_L, HIPSPARSE_SPMAT_DIAG_TYPE, &diagTy… in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1713 PetscCallHIPSPARSE(hipsparseCreateCsric02Info(&fs->ic0Info_M)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1714 …hipsparseXcsric02_bufferSize(fs->handle, m, nz, fs->matDescr_M, fs->csrVal, fs->csrRowPtr, fs->csr… in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1716 PetscCallHIP(hipMalloc((void **)&fs->X, sizeof(PetscScalar) * m)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1717 PetscCallHIP(hipMalloc((void **)&fs->Y, sizeof(PetscScalar) * m)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1719 PetscCallHIPSPARSE(hipsparseCreateDnVec(&fs->dnVecDescr_X, m, fs->X, hipsparse_scalartype)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1720 PetscCallHIPSPARSE(hipsparseCreateDnVec(&fs->dnVecDescr_Y, m, fs->Y, hipsparse_scalartype)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1722 PetscCallHIPSPARSE(hipsparseSpSV_createDescr(&fs->spsvDescr_L)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1723 …fs->handle, HIPSPARSE_OPERATION_NON_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_L, fs->dnVecDe… in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1725 PetscCallHIPSPARSE(hipsparseSpSV_createDescr(&fs->spsvDescr_Lt)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1726 …fs->handle, HIPSPARSE_OPERATION_TRANSPOSE, &PETSC_HIPSPARSE_ONE, fs->spMatDescr_L, fs->dnVecDescr_… in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1731 if (fs->spsvBufferSize_L > fs->spsvBufferSize_Lt) { in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1732 …PetscCallHIP(hipMalloc((void **)&fs->factBuffer_M, PetscMax(fs->spsvBufferSize_L, (size_t)fs->fact… in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1733 fs->spsvBuffer_L = fs->factBuffer_M; in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1734 PetscCallHIP(hipMalloc((void **)&fs->spsvBuffer_Lt, fs->spsvBufferSize_Lt)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1736 …PetscCallHIP(hipMalloc((void **)&fs->factBuffer_M, PetscMax(fs->spsvBufferSize_Lt, (size_t)fs->fac… in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1737 fs->spsvBuffer_Lt = fs->factBuffer_M; in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1738 PetscCallHIP(hipMalloc((void **)&fs->spsvBuffer_L, fs->spsvBufferSize_L)); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1747 fs->policy_M = HIPSPARSE_SOLVE_POLICY_USE_LEVEL; in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1748 …arseXcsric02_analysis(fs->handle, m, nz, fs->matDescr_M, fs->csrVal, fs->csrRowPtr, fs->csrColIdx,… in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1752 status = hipsparseXcsric02_zeroPivot(fs->handle, fs->ic0Info_M, &structural_zero); in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1773 fs->numericFactFlops = flops; in MatICCFactorSymbolic_SeqAIJHIPSPARSE_ICC0()
1909 Mat_SeqAIJHIPSPARSETriFactors *fs = (Mat_SeqAIJHIPSPARSETriFactors *)A->spptr; in MatSeqAIJHIPSPARSECopyFromGPU() local
1920 else if (fs->csrVal) { in MatSeqAIJHIPSPARSECopyFromGPU()
1922 PetscCallHIP(hipMemcpy(a->a, fs->csrVal, a->nz * sizeof(PetscScalar), hipMemcpyDeviceToHost)); in MatSeqAIJHIPSPARSECopyFromGPU()
3636 Mat_SeqAIJHIPSPARSETriFactors *fs = *trifactors; in MatSeqAIJHIPSPARSETriFactors_Reset() local
3639 if (fs) { in MatSeqAIJHIPSPARSETriFactors_Reset()
3640 PetscCall(MatSeqAIJHIPSPARSEMultStruct_Destroy(&fs->loTriFactorPtr)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3641 PetscCall(MatSeqAIJHIPSPARSEMultStruct_Destroy(&fs->upTriFactorPtr)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3642 PetscCall(MatSeqAIJHIPSPARSEMultStruct_Destroy(&fs->loTriFactorPtrTranspose)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3643 PetscCall(MatSeqAIJHIPSPARSEMultStruct_Destroy(&fs->upTriFactorPtrTranspose)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3644 delete fs->rpermIndices; in MatSeqAIJHIPSPARSETriFactors_Reset()
3645 delete fs->cpermIndices; in MatSeqAIJHIPSPARSETriFactors_Reset()
3646 delete fs->workVector; in MatSeqAIJHIPSPARSETriFactors_Reset()
3647 fs->rpermIndices = NULL; in MatSeqAIJHIPSPARSETriFactors_Reset()
3648 fs->cpermIndices = NULL; in MatSeqAIJHIPSPARSETriFactors_Reset()
3649 fs->workVector = NULL; in MatSeqAIJHIPSPARSETriFactors_Reset()
3650 fs->init_dev_prop = PETSC_FALSE; in MatSeqAIJHIPSPARSETriFactors_Reset()
3652 PetscCallHIP(hipFree(fs->csrRowPtr)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3653 PetscCallHIP(hipFree(fs->csrColIdx)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3654 PetscCallHIP(hipFree(fs->csrVal)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3655 PetscCallHIP(hipFree(fs->X)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3656 PetscCallHIP(hipFree(fs->Y)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3658 PetscCallHIP(hipFree(fs->spsvBuffer_L)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3659 PetscCallHIP(hipFree(fs->spsvBuffer_U)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3660 PetscCallHIP(hipFree(fs->spsvBuffer_Lt)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3661 PetscCallHIP(hipFree(fs->spsvBuffer_Ut)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3662 PetscCallHIPSPARSE(hipsparseDestroyMatDescr(fs->matDescr_M)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3663 if (fs->spMatDescr_L) PetscCallHIPSPARSE(hipsparseDestroySpMat(fs->spMatDescr_L)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3664 if (fs->spMatDescr_U) PetscCallHIPSPARSE(hipsparseDestroySpMat(fs->spMatDescr_U)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3665 PetscCallHIPSPARSE(hipsparseSpSV_destroyDescr(fs->spsvDescr_L)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3666 PetscCallHIPSPARSE(hipsparseSpSV_destroyDescr(fs->spsvDescr_Lt)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3667 PetscCallHIPSPARSE(hipsparseSpSV_destroyDescr(fs->spsvDescr_U)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3668 PetscCallHIPSPARSE(hipsparseSpSV_destroyDescr(fs->spsvDescr_Ut)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3669 if (fs->dnVecDescr_X) PetscCallHIPSPARSE(hipsparseDestroyDnVec(fs->dnVecDescr_X)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3670 if (fs->dnVecDescr_Y) PetscCallHIPSPARSE(hipsparseDestroyDnVec(fs->dnVecDescr_Y)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3671 PetscCallHIPSPARSE(hipsparseDestroyCsrilu02Info(fs->ilu0Info_M)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3672 PetscCallHIPSPARSE(hipsparseDestroyCsric02Info(fs->ic0Info_M)); in MatSeqAIJHIPSPARSETriFactors_Reset()
3674 fs->createdTransposeSpSVDescr = PETSC_FALSE; in MatSeqAIJHIPSPARSETriFactors_Reset()
3675 fs->updatedTransposeSpSVAnalysis = PETSC_FALSE; in MatSeqAIJHIPSPARSETriFactors_Reset()