[petsc-dev] Backend independent VecGetArray for GPUs

Karl Rupp rupp at iue.tuwien.ac.at
Fri Oct 17 14:29:28 CDT 2014


On 10/17/2014 09:11 PM, Barry Smith wrote:
>
>> On Oct 17, 2014, at 2:05 PM, Karl Rupp <rupp at iue.tuwien.ac.at> wrote:
>>
>>
>>>
>>>    But you won’t want to have to create the CUSP or ViennaCL objects on the fly each time from the CUDA/OpenCL “raw pointers”?
>>
>> why not? I can just 'wrap' an existing memory buffer for use with the respective operations provided with the respective library.
>
>    So you mean like VecPlaceArray()?   Ok.

Yes.


>    This is a big refactorization, probably more than what Lisandro is looking for in the short run.

Definitely.

> So what do we do in the short run, provide VecCUSPGetCUDAArray() and VecViennaCLGetOpenCLArray()?  I’m ok with that.

Agree'd. These are just simple wrappers on top of
  VecCUSPGetArrayRead()/VecCUSPGetArrayReadWrite()
and
  VecViennaCLGetArrayRead()/VecViennaCLGetArrayReadWrite()

I can add these over the weekend.

Best regards,
Karli




More information about the petsc-dev mailing list