:orphan:
# VecCreateMPIHIP
Creates a standard, parallel, array-style vector for HIP devices. 
## Synopsis
```
#include <petscvec.h> 
PetscErrorCode VecCreateMPIHIP(MPI_Comm comm, PetscInt n, PetscInt N, Vec *v)
```
Collective, Possibly Synchronous


## Input Parameters

- ***comm -*** the MPI communicator to use
- ***n    -*** local vector length (or `PETSC_DECIDE` to have calculated if N is given)
- ***N    -*** global vector length (or `PETSC_DETERMINE` to have calculated if n is given)



## Output Parameter

- ***v -*** the vector



## Notes
Use `VecDuplicate()` or `VecDuplicateVecs()` to form additional vectors of the same type as an
existing vector.

This function may initialize `PetscDevice`, which may incur a device synchronization.




## See Also
 `VecCreateMPIHIPWithArray()`, `VecCreateMPIHIPWithArrays()`, `VecCreateSeqHIP()`,
`VecCreateSeq()`, `VecCreateMPI()`, `VecCreate()`, `VecDuplicate()`, `VecDuplicateVecs()`,
`VecCreateGhost()`, `VecCreateMPIWithArray()`, `VecCreateGhostWithArray()`, `VecMPISetGhost()`

## Level
intermediate

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/vec/vec/impls/mpi/cupm/hip/vecmpicupm.hip.cpp#VecCreateMPIHIP">src/vec/vec/impls/mpi/cupm/hip/vecmpicupm.hip.cpp</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/vec/vec/impls/mpi/cupm/hip/vecmpicupm.hip.cpp)


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