| Re: GPULIB troubleshoot [message #80565 is a reply to message #80563] |
Mon, 25 June 2012 04:32  |
David Grier
Messages: 35 Registered: July 2010
|
Member |
|
|
On 6/25/12 4:27 AM, alx wrote:
> This message is intended to afficionados of GPULIB (in particular
> Michael Galloy...)
>
> I was successfully using a Tesla C1060 over several monthes on some
> workstation running Windows XP 64 bits and IDL8.0. Very successfully.
>
> Recently, I upgraded the same machine to Windows 7 64 bits and IDL8.2,
> with the following unsatisfying result:
>
> IDL> print,!version
> { x86_64 Win32 Windows Microsoft Windows 8.2 Apr 10 2012 64
> 64}
>
> IDL> gpuinit,0, /HARDWARE, ERROR=err, /VERBOSE
> Welcome to GPULib 1.4.4 (Revision: 2107)
> % GPUINIT: using hardware
> Graphics card: Tesla C1060, compute capability: 1.3, memory: 4040 MB
> available, 4095 MB total
> Checking GPU memory allocation...no errors
>
> IDL> a = gpuputarr(findgen(10), ERROR=err) & print,err
> 0
> IDL> b = gpuputarr(findgen(10), ERROR=err) & print,err
> 0
> IDL> c = gpumult(a,b,LHS=c, ERROR=err) & print,err
> 8
> The c GPU variable is created, but is in error
>
> IDL> print, gpugetarr(c,ERROR=err) & print,err
> 1.43493e-042 1.73472e-018 0.000000 7.34684e-040 0.000000
> 0.000000 0.000000 6.01853e-036 0.000000 2.52435e-029
> 0
>
> Does someone have an explanation ?
> alain.
>
I see two possible issues
1. It appears that c is declared to be the LHS (left-hand side) of
the gpumult() call without first having being allocated.
Have you tried getting gpumult to allocate the necessary GPU
variable?
IDL> c = gpumult(a, b, ERROR=err) & print, err
You also might allocate the variable explicitly:
IDL> c = gpufltarr(10)
IDL> c = gpumult(a, b, LHS = c)
2. Did you rebuild GPULib when you upgraded your OS and IDL
installation? I've forgotten to rebuild GPULib on
my linux machines after upgrades and have had strange results.
TTFN,
David
|
|
|
|