[petsc-dev] Not able to compile with VecViennaCLGetArrayRead/Write

Karl Rupp rupp at mcs.anl.gov
Mon Jan 20 03:07:35 CST 2014


Hi Mani,

 > I can't seem to get petsc to play nice when I have something like
>
> Vec X;
> viennacl::vector<PetscScalar> *x;
>
> VecViennaCLGetArrayWrite(X, &x);
> //Launch some opencl kernels
> VecViennaCLRestoreArrayWrite(X, &x);
>
> I get the following compilation error:
> error: ‘VecSeqViennaCLGetArrayWrite’ was not declared in this scope
> error: ‘VecSeqViennaCLRestoreArrayWrite’ was not declared in this scope
>
> I tried adding a header like "#include <petscviennacl.h>" (like
> petsccusp.h) but it didn't work. Is there a fix to this or are those
> functions not supposed to be called from user code?

Did you enable ViennaCL in the configure stage through e.g.
  --download-viennacl?
I also plan to push an update of the bindings to the latest ViennaCL 
release this week.

Best regards,
Karli




More information about the petsc-dev mailing list