| /petsc/src/mat/utils/ |
| H A D | matstash.c | 28 PetscErrorCode MatStashCreate_Private(MPI_Comm comm, PetscInt bs, MatStash *stash) in MatStashCreate_Private() argument 35 stash->comm = comm; in MatStashCreate_Private() 37 PetscCall(PetscCommGetNewTag(stash->comm, &stash->tag1)); in MatStashCreate_Private() 38 PetscCall(PetscCommGetNewTag(stash->comm, &stash->tag2)); in MatStashCreate_Private() 39 PetscCallMPI(MPI_Comm_size(stash->comm, &stash->size)); in MatStashCreate_Private() 40 PetscCallMPI(MPI_Comm_rank(stash->comm, &stash->rank)); in MatStashCreate_Private() 41 PetscCall(PetscMalloc1(2 * stash->size, &stash->flg_v)); in MatStashCreate_Private() 42 for (i = 0; i < 2 * stash->size; i++) stash->flg_v[i] = -1; in MatStashCreate_Private() 44 nopt = stash->size; in MatStashCreate_Private() 49 else if (nopt == stash->size) max = opt[stash->rank]; in MatStashCreate_Private() [all …]
|
| H A D | pheap.c | 12 PetscInt stash; /* stash grows down, this points to last item */ member 71 h->stash = h->alloc; in PetscHeapCreate() 86 …stash, PETSC_COMM_SELF, PETSC_ERR_ARG_OUTOFRANGE, "Addition would exceed allocation %" PetscInt_FM… in PetscHeapAdd() 146 loc = --h->stash; in PetscHeapStash() 155 while (h->stash < h->alloc) { in PetscHeapUnstash() 156 PetscInt id = Id(h, h->stash), value = Value(h, h->stash); in PetscHeapUnstash() 157 h->stash++; in PetscHeapUnstash() 180 … "Heap size %" PetscInt_FMT " with %" PetscInt_FMT " stashed\n", h->end - 1, h->alloc - h->stash)); in PetscHeapView() 184 …PetscCall(PetscIntView(2 * (h->alloc - h->stash), (const PetscInt *)(h->base + h->stash), viewer)); in PetscHeapView()
|
| /petsc/src/vec/vec/utils/ |
| H A D | vecstash.c | 19 PetscErrorCode VecStashCreate_Private(MPI_Comm comm, PetscInt bs, VecStash *stash) in VecStashCreate_Private() argument 26 stash->comm = comm; in VecStashCreate_Private() 27 PetscCall(PetscCommGetNewTag(stash->comm, &stash->tag1)); in VecStashCreate_Private() 28 PetscCall(PetscCommGetNewTag(stash->comm, &stash->tag2)); in VecStashCreate_Private() 29 PetscCallMPI(MPI_Comm_size(stash->comm, &stash->size)); in VecStashCreate_Private() 30 PetscCallMPI(MPI_Comm_rank(stash->comm, &stash->rank)); in VecStashCreate_Private() 32 nopt = stash->size; in VecStashCreate_Private() 37 else if (nopt == stash->size) max = opt[stash->rank]; in VecStashCreate_Private() 38 else if (stash->rank < nopt) max = opt[stash->rank]; in VecStashCreate_Private() 40 stash->umax = max; in VecStashCreate_Private() [all …]
|
| /petsc/src/vec/vec/impls/mpi/ |
| H A D | pbvec.c | 50 (*v)->stash.donotstash = win->stash.donotstash; in VecDuplicateWithArray_MPI() 51 (*v)->stash.ignorenegidx = win->stash.ignorenegidx; in VecDuplicateWithArray_MPI() 56 (*v)->stash.bs = win->stash.bs; in VecDuplicateWithArray_MPI() 93 v->stash.donotstash = w->stash.donotstash; in VecDuplicateVecs_MPI_GEMV() 94 v->stash.ignorenegidx = w->stash.ignorenegidx; in VecDuplicateVecs_MPI_GEMV() 95 v->stash.bs = w->stash.bs; in VecDuplicateVecs_MPI_GEMV() 115 V->stash.donotstash = flag; in VecSetOption_MPI() 118 V->stash.ignorenegidx = flag; in VecSetOption_MPI() 210 if (X->stash.donotstash) PetscFunctionReturn(PETSC_SUCCESS); in VecAssemblyBegin_MPI_BTS() 217 …PetscCallMPI(MPIU_Allreduce((PetscEnum *)&X->stash.insertmode, (PetscEnum *)&addv, 1, MPIU_ENUM, M… in VecAssemblyBegin_MPI_BTS() [all …]
|
| H A D | pdvec.c | 45 PetscCall(VecStashDestroy_Private(&v->stash)); in VecDestroy_MPI() 713 const PetscInt start = xin->map->range[xin->stash.rank]; in VecGetValues_MPI() 718 if (xin->stash.ignorenegidx && ix[i] < 0) continue; in VecGetValues_MPI() 730 const PetscBool ignorenegidx = xin->stash.ignorenegidx; in VecSetValues_MPI() 731 const PetscBool donotstash = xin->stash.donotstash; in VecSetValues_MPI() 732 const PetscMPIInt rank = xin->stash.rank; in VecSetValues_MPI() 739 …PetscCheck(xin->stash.insertmode != INSERT_VALUES || addv != ADD_VALUES, PETSC_COMM_SELF, PETSC_ER… in VecSetValues_MPI() 740 …PetscCheck(xin->stash.insertmode != ADD_VALUES || addv != INSERT_VALUES, PETSC_COMM_SELF, PETSC_ER… in VecSetValues_MPI() 743 xin->stash.insertmode = addv; in VecSetValues_MPI() 758 PetscCall(VecStashValue_Private(&xin->stash, row, yv)); in VecSetValues_MPI() [all …]
|
| /petsc/include/petsc/private/ |
| H A D | vecimpl.h | 159 VecStash stash, bstash; /* used for storing off-proc values during assembly */ member 267 static inline PetscErrorCode VecStashValue_Private(VecStash *stash, PetscInt row, PetscScalar value) in VecStashValue_Private() argument 271 if (((stash)->n + 1) > (stash)->nmax) PetscCall(VecStashExpand_Private(stash, 1)); in VecStashValue_Private() 272 (stash)->idx[(stash)->n] = row; in VecStashValue_Private() 273 (stash)->array[(stash)->n] = value; in VecStashValue_Private() 274 (stash)->n++; in VecStashValue_Private() 286 static inline PetscErrorCode VecStashValuesBlocked_Private(VecStash *stash, PetscInt row, PetscScal… in VecStashValuesBlocked_Private() argument 288 PetscInt stash_bs = (stash)->bs; in VecStashValuesBlocked_Private() 292 if (((stash)->n + 1) > (stash)->nmax) PetscCall(VecStashExpand_Private(stash, 1)); in VecStashValuesBlocked_Private() 293 array = (stash)->array + stash_bs * (stash)->n; in VecStashValuesBlocked_Private() [all …]
|
| H A D | veccupmimpl.h | 959 (*y)->stash.donotstash = v->stash.donotstash; in Duplicate_CUPMBase() 960 (*y)->stash.ignorenegidx = v->stash.ignorenegidx; in Duplicate_CUPMBase()
|
| /petsc/src/vec/vec/impls/shared/ |
| H A D | shvec.c | 25 (*v)->stash.donotstash = win->stash.donotstash; in VecDuplicate_Shared() 26 (*v)->stash.ignorenegidx = win->stash.ignorenegidx; in VecDuplicate_Shared()
|
| /petsc/src/mat/tests/output/ |
| H A D | ex29_1.out | 6 Pop two items, increment, and place in stash: 12 After unpacking the stash:
|
| /petsc/src/mat/impls/preallocator/ |
| H A D | matpreallocator.c | 17 PetscCall(MatStashDestroy_Private(&A->stash)); in MatDestroy_Preallocator() 38 PetscCall(MatStashCreate_Private(PetscObjectComm((PetscObject)A), 1, &A->stash)); in MatSetUp_Preallocator() 61 PetscCall(MatStashValuesRow_Private(&A->stash, key.i, n, cols, values, PETSC_FALSE)); in MatSetValues_Preallocator() 88 PetscCall(MatStashScatterBegin_Private(A, &A->stash, A->rmap->range)); in MatAssemblyBegin_Preallocator() 89 PetscCall(MatStashGetInfo_Private(&A->stash, &nstash, &reallocs)); in MatAssemblyBegin_Preallocator() 105 PetscCall(MatStashScatterGetMesg_Private(&A->stash, &n, &row, &col, &val, &flg)); in MatAssemblyEnd_Preallocator() 121 PetscCall(MatStashScatterEnd_Private(&A->stash)); in MatAssemblyEnd_Preallocator()
|
| /petsc/src/mat/impls/aij/mpi/ |
| H A D | mpihashmat.h | 30 …PetscCall(MatStashValuesRow_Private(&A->stash, rows[r], n, cols, PetscSafePointerPlusOffset(values… in MatSetValues_MPI_Hash() 32 …PetscCall(MatStashValuesCol_Private(&A->stash, rows[r], n, cols, PetscSafePointerPlusOffset(values… in MatSetValues_MPI_Hash() 63 PetscCall(MatStashScatterBegin_Private(A, &A->stash, A->rmap->range)); in MatAssemblyBegin_MPI_Hash() 64 PetscCall(MatStashGetInfo_Private(&A->stash, &nstash, &reallocs)); in MatAssemblyBegin_MPI_Hash() 80 PetscCall(MatStashScatterGetMesg_Private(&A->stash, &n, &row, &col, &val, &flg)); in MatFinishScatterAndSetValues_MPI_Hash() 95 PetscCall(MatStashScatterEnd_Private(&A->stash)); in MatFinishScatterAndSetValues_MPI_Hash() 143 PetscCall(MatStashDestroy_Private(&A->stash)); in MatDestroy_MPI_Hash()
|
| H A D | mpiaij.c | 22 PetscCall(MatStashDestroy_Private(&mat->stash)); in MatReset_MPIAIJ() 625 …PetscCall(MatStashValuesRow_Private(&mat->stash, im[i], n, in, PetscSafePointerPlusOffset(v, i * n… in MatSetValues_MPIAIJ() 627 …PetscCall(MatStashValuesCol_Private(&mat->stash, im[i], n, in, PetscSafePointerPlusOffset(v, i), m… in MatSetValues_MPIAIJ() 767 PetscCall(MatStashScatterBegin_Private(mat, &mat->stash, mat->rmap->range)); in MatAssemblyBegin_MPIAIJ() 768 PetscCall(MatStashGetInfo_Private(&mat->stash, &nstash, &reallocs)); in MatAssemblyBegin_MPIAIJ() 787 PetscCall(MatStashScatterGetMesg_Private(&mat->stash, &n, &row, &col, &val, &flg)); in MatAssemblyEnd_MPIAIJ() 802 PetscCall(MatStashScatterEnd_Private(&mat->stash)); in MatAssemblyEnd_MPIAIJ() 6805 PetscCall(MatStashCreate_Private(PetscObjectComm((PetscObject)B), 1, &B->stash)); in MatCreate_MPIAIJ() 8159 …PetscCall(MatStashValuesRow_Private(&mat->stash, im[i], n, in, v + i * n, (PetscBool)(ignorezeroen… in matsetvaluesmpiaij_() 8161 …PetscCall(MatStashValuesCol_Private(&mat->stash, im[i], n, in, v + i, m, (PetscBool)(ignorezeroent… in matsetvaluesmpiaij_()
|
| /petsc/src/mat/impls/scalapack/ |
| H A D | matscalapack.c | 152 …PetscCall(MatStashValuesRow_Private(&A->stash, rows[i], 1, cols + j, roworiented ? vals + i * nc +… in MatSetValues_ScaLAPACK() 1254 PetscCall(MatStashDestroy_Private(&A->stash)); in MatDestroy_ScaLAPACK() 1313 PetscCall(MatStashScatterBegin_Private(A, &A->stash, NULL)); in MatAssemblyBegin_ScaLAPACK() 1314 PetscCall(MatStashGetInfo_Private(&A->stash, &nstash, &reallocs)); in MatAssemblyBegin_ScaLAPACK() 1330 PetscCall(MatStashScatterGetMesg_Private(&A->stash, &n, &row, &col, &val, &flg)); in MatAssemblyEnd_ScaLAPACK() 1349 PetscCall(MatStashScatterEnd_Private(&A->stash)); in MatAssemblyEnd_ScaLAPACK() 1514 static PetscErrorCode MatStashScatterBegin_ScaLAPACK(Mat mat, MatStash *stash, PetscInt *owners) in MatStashScatterBegin_ScaLAPACK() argument 1517 PetscInt size = stash->size, nsends; in MatStashScatterBegin_ScaLAPACK() 1520 MPI_Comm comm = stash->comm; in MatStashScatterBegin_ScaLAPACK() 1522 …PetscMPIInt tag1 = stash->tag1, tag2 = stash->tag2, *sizes, *nlengths, nreceives, insends, … in MatStashScatterBegin_ScaLAPACK() [all …]
|
| /petsc/src/vec/vec/impls/mpi/kokkos/ |
| H A D | mpikok.kokkos.cxx | 314 v->stash.donotstash = w->stash.donotstash; in VecDuplicateVecs_MPIKokkos_GEMV() 315 v->stash.ignorenegidx = w->stash.ignorenegidx; in VecDuplicateVecs_MPIKokkos_GEMV() 316 v->stash.bs = w->stash.bs; in VecDuplicateVecs_MPIKokkos_GEMV()
|
| /petsc/src/vec/vec/impls/mpi/mpiviennacl/ |
| H A D | mpiviennacl.cxx | 134 (*v)->stash.donotstash = win->stash.donotstash; in VecDuplicate_MPIViennaCL() 135 (*v)->stash.ignorenegidx = win->stash.ignorenegidx; in VecDuplicate_MPIViennaCL()
|
| /petsc/src/mat/impls/adj/mpi/ |
| H A D | mpiadj.c | 463 PetscCall(MatStashCreate_Private(PetscObjectComm((PetscObject)A), 1, &A->stash)); in MatSetValues_MPIAdj() 473 PetscCall(MatStashValuesRow_Private(&A->stash, key.i, n, cols, values, PETSC_FALSE)); in MatSetValues_MPIAdj() 496 PetscCall(MatStashScatterBegin_Private(A, &A->stash, A->rmap->range)); in MatAssemblyBegin_MPIAdj() 497 PetscCall(MatStashGetInfo_Private(&A->stash, &nstash, &reallocs)); in MatAssemblyBegin_MPIAdj() 515 PetscCall(MatStashScatterGetMesg_Private(&A->stash, &n, &row, &col, &val, &flg)); in MatAssemblyEnd_MPIAdj() 530 PetscCall(MatStashScatterEnd_Private(&A->stash)); in MatAssemblyEnd_MPIAdj() 531 PetscCall(MatStashDestroy_Private(&A->stash)); in MatAssemblyEnd_MPIAdj() 745 PetscCall(MatStashDestroy_Private(&B->stash)); in MatMPIAdjSetPreallocation_MPIAdj()
|
| /petsc/src/mat/impls/sell/mpi/ |
| H A D | mpisell.c | 238 …PetscCall(MatStashValuesRow_Private(&mat->stash, im[i], n, in, v + i * n, (PetscBool)(ignorezeroen… in MatSetValues_MPISELL() 240 …PetscCall(MatStashValuesCol_Private(&mat->stash, im[i], n, in, v + i, m, (PetscBool)(ignorezeroent… in MatSetValues_MPISELL() 290 PetscCall(MatStashScatterBegin_Private(mat, &mat->stash, mat->rmap->range)); in MatAssemblyBegin_MPISELL() 291 PetscCall(MatStashGetInfo_Private(&mat->stash, &nstash, &reallocs)); in MatAssemblyBegin_MPISELL() 308 PetscCall(MatStashScatterGetMesg_Private(&mat->stash, &n, &row, &col, &val, &flg)); in MatAssemblyEnd_MPISELL() 315 PetscCall(MatStashScatterEnd_Private(&mat->stash)); in MatAssemblyEnd_MPISELL() 503 PetscCall(MatStashDestroy_Private(&mat->stash)); in MatDestroy_MPISELL() 1821 PetscCall(MatStashCreate_Private(PetscObjectComm((PetscObject)B), 1, &B->stash)); in MatCreate_MPISELL()
|
| /petsc/src/vec/vec/impls/seq/ |
| H A D | bvec2.c | 491 const PetscBool ignorenegidx = xin->stash.ignorenegidx; in VecGetValues_Seq() 510 const PetscBool ignorenegidx = xin->stash.ignorenegidx; in VecSetValues_Seq() 593 …PetscCheck(!nneg || x->stash.ignorenegidx, PETSC_COMM_SELF, PETSC_ERR_ARG_OUTOFRANGE, "Found a neg… in VecSetPreallocationCOO_Seq() 653 if (op == VEC_IGNORE_NEGATIVE_INDICES) v->stash.ignorenegidx = flag; in VecSetOption_Seq()
|
| /petsc/src/vec/vec/interface/ |
| H A D | vector.c | 42 PetscCall(VecStashGetInfo_Private(&vec->stash, nstash, reallocs)); in VecStashGetInfo() 784 …PetscCheck(!vec->stash.n && !vec->bstash.n, PETSC_COMM_SELF, PETSC_ERR_ARG_WRONGSTATE, "Must call … in VecView() 1304 PetscCall(VecStashSetInitialSize_Private(&vec->stash, size)); in VecStashSetInitialSize() 1940 s = &v->stash; in VecStashView()
|
| /petsc/src/mat/impls/sbaij/mpi/ |
| H A D | mpisbaij.c | 12 PetscCall(MatStashDestroy_Private(&mat->stash)); in MatDestroy_MPISBAIJ() 393 PetscCall(MatStashValuesRow_Private(&mat->stash, im[i], n_loc, in_loc, v_loc, PETSC_FALSE)); in MatSetValues_MPISBAIJ() 776 PetscCall(MatStashScatterBegin_Private(mat, &mat->stash, mat->rmap->range)); in MatAssemblyBegin_MPISBAIJ() 778 PetscCall(MatStashGetInfo_Private(&mat->stash, &nstash, &reallocs)); in MatAssemblyBegin_MPISBAIJ() 780 PetscCall(MatStashGetInfo_Private(&mat->stash, &nstash, &reallocs)); in MatAssemblyBegin_MPISBAIJ() 800 PetscCall(MatStashScatterGetMesg_Private(&mat->stash, &n, &row, &col, &val, &flg)); in MatAssemblyEnd_MPISBAIJ() 815 PetscCall(MatStashScatterEnd_Private(&mat->stash)); in MatAssemblyEnd_MPISBAIJ() 2093 PetscCall(MatStashCreate_Private(PetscObjectComm((PetscObject)B), 1, &B->stash)); in MatCreate_MPISBAIJ()
|
| /petsc/src/mat/impls/baij/mpi/ |
| H A D | mpibaij.c | 13 PetscCall(MatStashDestroy_Private(&mat->stash)); in MatDestroy_MPIBAIJ() 316 PetscCall(MatStashValuesRow_Private(&mat->stash, im[i], n, in, v + i * n, PETSC_FALSE)); in MatSetValues_MPIBAIJ() 318 PetscCall(MatStashValuesCol_Private(&mat->stash, im[i], n, in, v + i, m, PETSC_FALSE)); in MatSetValues_MPIBAIJ() 544 PetscCall(MatStashValuesRow_Private(&mat->stash, im[i], n, in, v + i * n, PETSC_FALSE)); in MatSetValues_MPIBAIJ_HT() 546 PetscCall(MatStashValuesCol_Private(&mat->stash, im[i], n, in, v + i, m, PETSC_FALSE)); in MatSetValues_MPIBAIJ_HT() 891 PetscCall(MatStashScatterBegin_Private(mat, &mat->stash, mat->rmap->range)); in MatAssemblyBegin_MPIBAIJ() 893 PetscCall(MatStashGetInfo_Private(&mat->stash, &nstash, &reallocs)); in MatAssemblyBegin_MPIBAIJ() 914 PetscCall(MatStashScatterGetMesg_Private(&mat->stash, &n, &row, &col, &val, &flg)); in MatAssemblyEnd_MPIBAIJ() 929 PetscCall(MatStashScatterEnd_Private(&mat->stash)); in MatAssemblyEnd_MPIBAIJ() 2864 PetscCall(MatStashCreate_Private(PetscObjectComm((PetscObject)B), 1, &B->stash)); in MatCreate_MPIBAIJ()
|
| /petsc/src/mat/impls/dense/mpi/ |
| H A D | mpidense.c | 157 …PetscCall(MatStashValuesRow_Private(&mat->stash, idxm[i], n, idxn, PetscSafePointerPlusOffset(v, i… in MatSetValues_MPIDense() 159 …PetscCall(MatStashValuesCol_Private(&mat->stash, idxm[i], n, idxn, PetscSafePointerPlusOffset(v, i… in MatSetValues_MPIDense() 387 PetscCall(MatStashScatterBegin_Private(mat, &mat->stash, mat->rmap->range)); in MatAssemblyBegin_MPIDense() 388 PetscCall(MatStashGetInfo_Private(&mat->stash, &nstash, &reallocs)); in MatAssemblyBegin_MPIDense() 404 PetscCall(MatStashScatterGetMesg_Private(&mat->stash, &n, &row, &col, &val, &flg)); in MatAssemblyEnd_MPIDense() 419 PetscCall(MatStashScatterEnd_Private(&mat->stash)); in MatAssemblyEnd_MPIDense() 702 PetscCall(MatStashDestroy_Private(&mat->stash)); in MatDestroy_MPIDense() 1738 PetscCall(MatStashCreate_Private(PetscObjectComm((PetscObject)mat), 1, &mat->stash)); in MatCreate_MPIDense()
|
| /petsc/src/mat/impls/hypre/ |
| H A D | mhypre.c | 1389 PetscCall(MatStashDestroy_Private(&A->stash)); 1449 PetscCall(MatStashScatterGetMesg_Private(&A->stash, &n, &row, &col, &val, &flg)); 1465 PetscCall(MatStashScatterEnd_Private(&A->stash)); 1600 …if (!hA->donotstash) PetscCall(MatStashValuesRow_Private(&A->stash, rows[i], nzc, cscr[0], (PetscS… 2072 PetscCall(MatStashScatterBegin_Private(mat, &mat->stash, mat->rmap->range)); 2439 PetscCall(MatStashCreate_Private(PetscObjectComm((PetscObject)B), 1, &B->stash));
|
| /petsc/src/vec/vec/impls/seq/seqviennacl/ |
| H A D | vecviennacl.cxx | 1128 (*V)->stash.ignorenegidx = win->stash.ignorenegidx; in VecDuplicate_SeqViennaCL()
|
| /petsc/include/ |
| H A D | petscvec.h | 528 #define VecCheckAssembled(v) PetscCheck(v->stash.insertmode == NOT_SET_VALUES, PETSC_COMM_SELF, PET…
|