VecCreateMPICUDA — PETSc 3.23.0 documentation

Skip to main content
`Ctrl`+`K`

# VecCreateMPICUDA

Creates a standard, parallel, array-style vector for CUDA devices.

## Synopsis

    #include <petscvec.h>
    PetscErrorCode VecCreateMPICUDA(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

`VecCreateMPICUDAWithArray()`, `VecCreateMPICUDAWithArrays()`, `VecCreateSeqCUDA()`, `VecCreateSeq()`, `VecCreateMPI()`, `VecCreate()`, `VecDuplicate()`, `VecDuplicateVecs()`, `VecCreateGhost()`, `VecCreateMPIWithArray()`, `VecCreateGhostWithArray()`, `VecMPISetGhost()`

## Level

intermediate

## Location

src/vec/vec/impls/mpi/cupm/cuda/vecmpicupm.cu

Index of all Vec routines
Table of Contents for all manual pages
Index of all manual pages