I've had the same errors on MacOS, Windows 10, and Linux using the
devices() do loop with CUDArt package. All of the programs I run I place
inside the outer do loop including all the repetitions because as soon as
that block ends I cannot use any other CUDA functions without some type of
pointer or memory error. The only solution I've found is to restart Julia,
but I noticed that if I run a program like yours with a julia command in
the terminal rather than a REPL session, even if I just run one loop and I
close the session I still get the memory errors when the script ends.
Perhaps someone involved in developing CUDArt can give some insight as to
why the outer do-block loop cannot be ended cleanly.
On Friday, November 6, 2015 at 12:46:54 PM UTC-7, Joaquim Masset Lacombe
Dias Garcia wrote:
>
> I was playing with the GPU (in both windows and mac) libraries and I came
> up with the following errors:
> The first time I execute the do loop, every thing goes well.
> But If i try a second time in a row I get this invalid pointer error.
>
> I got the same error in all my do loops, any ideas?
>
> best,
> Joaquim
>
> *My code running on terminal:*
>
> julia> using CUDArt
> julia> using CURAND
> julia> result = devices(dev->capability(dev)[1]>=2) do devlist
> d_a = curand(Float32, 1000);
> a = to_host(d_a);
> end
>
> 1000-element Array{Float64,1}:
> 0.438451
> 0.460365
> 0.250215
> 0.494744
> 0.0530111
> 0.337699
> 0.396763
> 0.874419
> 0.482167
> 0.0428398
> ?
> 0.563937
> 0.80706
> 0.190015
> 0.334969
> 0.622164
> 0.710596
> 0.0125895
> 0.990388
> 0.467796
> 0.24313
>
> julia> result = devices(dev->capability(dev)[1]>=2) do devlist
> d_a = curand(Float32, 1000);
> a = to_host(d_a);
> end
> WARNING: CUDA error triggered from:
>
> in checkerror at
> C:\Users\joaquimgarcia\.julia\v0.4\CUDArt\src\libcudart-6.5.jl
> :15
> in copy! at C:\Users\joaquimgarcia\.julia\v0.4\CUDArt\src\arrays.jl:152
> in to_host at C:\Users\joaquimgarcia\.julia\v0.4\CUDArt\src\arrays.jl:87
> in anonymous at none:3
> in devices at
> C:\Users\joaquimgarcia\.julia\v0.4\CUDArt\src\device.jl:61ERROR:
> Launch failed, perhaps due to an invalid pointer
> in checkdrv at C:\Users\joaquimgarcia\.julia\v0.4\CUDArt\src\module.jl:6
> in close at C:\Users\joaquimgarcia\.julia\v0.4\CUDArt\src\device.jl:136
> in devices at C:\Users\joaquimgarcia\.julia\v0.4\CUDArt\src\device.jl:63
>
>