diff --git a/parmepy/new_ParMePy/Utils/GPUParticularSolver.py b/parmepy/new_ParMePy/Utils/GPUParticularSolver.py index 2afe1243242185567bdbee02d1d9715aaa183c49..c9183718d1d8ff15022a93d0ced0a359c9001540 100644 --- a/parmepy/new_ParMePy/Utils/GPUParticularSolver.py +++ b/parmepy/new_ParMePy/Utils/GPUParticularSolver.py @@ -68,6 +68,7 @@ class GPUParticularSolver(ParticularSolver): self.gpu_used_mem = 0 ## Allocation/copy grid velocity + self.gvelo.values = np.asarray(self.gvelo.values, dtype=np.float32) self.gvelo.gpu_mem_object = cl.Buffer(self.ctx, cl.mem_flags.READ_WRITE | cl.mem_flags.COPY_HOST_PTR, size=self.gvelo.values.nbytes, hostbuf=self.gvelo.values) @@ -75,6 +76,7 @@ class GPUParticularSolver(ParticularSolver): print "Allocation grid velocity on gpu, size:", self.gvelo.gpu_mem_object.size, 'B' ## Allocation/copy grid scalar + self.gscal.values = np.asarray(self.gscal.values, dtype=np.float32) self.gscal.gpu_mem_object = cl.Buffer(self.ctx, cl.mem_flags.READ_WRITE | cl.mem_flags.COPY_HOST_PTR, size=self.gscal.values.nbytes, hostbuf=self.gscal.values) @@ -82,6 +84,7 @@ class GPUParticularSolver(ParticularSolver): print "Allocation grid scalar on gpu, size:", self.gscal.gpu_mem_object.size, 'B' ## Allocation/copy particles positions + self.ppos.values = np.asarray(self.ppos.values, dtype=np.float32) self.ppos.gpu_mem_object = cl.Buffer(self.ctx, cl.mem_flags.READ_WRITE | cl.mem_flags.COPY_HOST_PTR, size=self.ppos.values.nbytes, hostbuf=self.ppos.values) @@ -89,6 +92,7 @@ class GPUParticularSolver(ParticularSolver): print "Allocation particles positions on gpu, size:", self.ppos.gpu_mem_object.size, 'B' ## Allocation/copy particles scalar + self.pscal.values = np.asarray(self.pscal.values, dtype=np.float32) self.pscal.gpu_mem_object = cl.Buffer(self.ctx, cl.mem_flags.READ_WRITE | cl.mem_flags.COPY_HOST_PTR, size=self.pscal.values.nbytes, hostbuf=self.pscal.values)