<div dir="ltr"><div><div dir="ltr"><div>Hi Barry, <br><br></div>Thanks for the explanation! Removing the calls to 
PetscMalloc(Re)SetCUDAHost solved that issue.<br><br></div><div>Just to clarify, all PetscMalloc(s) happen on the host and there is no special PetscMalloc for device memory allocation ? (Say for an operation sequence PetscMalloc1(N, &ptr), VecCUDAGetArray(cudavec, &ptr) )<br></div><div><br></div></div>Thank You,<br><div><div dir="ltr"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div style="font-size:12.8px">Sajid Ali | PhD Candidate<br></div><div style="font-size:12.8px">Applied Physics<br></div><div style="font-size:12.8px">Northwestern University</div><div style="font-size:12.8px"><a href="http://s-sajid-ali.github.io" target="_blank">s-sajid-ali.github.io</a></div></div></div></div></div></div></div></div></div>