# VecSetBindingPropagates
Sets whether the state of being bound to the CPU for a GPU vector type propagates to child and some other associated objects 
## Synopsis
```
#include "petscvec.h"   
PetscErrorCode VecSetBindingPropagates(Vec v, PetscBool flg)
```

## Input Parameters

- ***v -*** the vector
- ***flg -*** flag indicating whether the boundtocpu flag should be propagated





## Notes
If the value of flg is set to true, then VecDuplicate() and VecDuplicateVecs() will bind created vectors to GPU if the input vector is bound to the CPU.
The created vectors will also have their bindingpropagates flag set to true.


## Developer Notes
If a DMDA has the -dm_bind_below option set to true, then vectors created by DMCreateGlobalVector() will have VecSetBindingPropagates() called on them to
set their bindingpropagates flag to true.


## See Also
 `MatSetBindingPropagates()`, `VecGetBindingPropagates()`

## Level
developer

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/vec/vec/interface/vector.c.html#VecSetBindingPropagates">src/vec/vec/interface/vector.c</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/vec/vec/interface/vector.c)


[Index of all Vec routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
