[petsc-dev] Possible bugs when using TS with ViennaCL (continued)

Karl Rupp rupp at mcs.anl.gov
Tue Jan 28 10:12:59 CST 2014

Hi Mani,

 > Thanks for the explanation. Do you think it will help if I use a GPU
> which is capable of doing double precision arithmetic?

Your GPU must be supporting double precision, otherwise the jit-compiler 
will fail. However, your GPU might emulate double precision arithmetics 

> I am using NVIDIA Quadra FX 1800 M. It has 1GB of global memory.

For production runs you definitely want to use a discrete GPU to get the 
benefits of higher bandwidth (through higher heat dissipation...)

> Unfortunately NVIDIAs' visual profiler does not seem to work with its
> OpenCL implementation. The code does not crash when I run it on the CPU
> using Intels OpenCL.

Let me put it this way: This ridiculous move of taking OpenCL debugging 
capabilities out when releasing CUDA 5.0 is not based on scientific 

> I mean't to say that the code does not crash either with
> ComputeResidualViennaCL or ComputeResidual with the normal Petsc
> Vec/Mats but does indeed crash when either of them are used with the
> ViennaCL vecs.

I'm wondering how ComputeResidualViennaCL will work if the vector type 

> Do you think there is memory allocation at every time
> step? I thought all the memory would be allocated during initialization.

 From your description a memory allocation seems to be the case, yes, 
but I still need to verify this. Did you see a similar increase in 
memory consumption (use e.g. top) with Intel's OpenCL SDK?

Best regards,

More information about the petsc-dev mailing list