Go Back   Rhinocerus > Newsgroup > Newsgroup comp.lang.* 1 > Newsgroup comp.lang.idl-pvwave

Reply
 
Thread Tools Display Modes
  #1 (permalink)  
Old 06-25-2012, 08:27 AM
alx
Guest
 
Posts: n/a
Default GPULIB troubleshoot

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.
Reply With Quote
Alt Today
Advertising
 
and become member of Rhinocerus
Standard Sponsored Links

  #2 (permalink)  
Old 06-25-2012, 11:32 AM
David Grier
Guest
 
Posts: n/a
Default Re: GPULIB troubleshoot

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
Reply With Quote
  #3 (permalink)  
Old 06-25-2012, 11:49 AM
alx
Guest
 
Posts: n/a
Default Re: GPULIB troubleshoot

On 25 juin, 13:32, David Grier <david.gr...@nyu.edu> wrote:
> 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
>
>


Regarding issue 1: preallocation statement was missed in the message,
but was done in actual processing.
Regarding issue 2: GPUlib cannot be rebuilt (from my side), since the
binary DLL (GPUlib.1.4.4) file is distributed without any sources.
I forgot to say that, when upgrading OS and IDL, I kept same NVIDIA
graphics driver and CUDA version than before... So, I do not think
that rebuilding the library would be mandatory.
Thanks anyway for the tips.
alain.
Reply With Quote
  #4 (permalink)  
Old 06-25-2012, 01:11 PM
David Grier
Guest
 
Posts: n/a
Default Re: GPULIB troubleshoot

On 6/25/12 7:49 AM, alx wrote:
> On 25 juin, 13:32, David Grier <david.gr...@nyu.edu> wrote:
>> 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
>>
>>

>
> Regarding issue 1: preallocation statement was missed in the message,
> but was done in actual processing.
> Regarding issue 2: GPUlib cannot be rebuilt (from my side), since the
> binary DLL (GPUlib.1.4.4) file is distributed without any sources.
> I forgot to say that, when upgrading OS and IDL, I kept same NVIDIA
> graphics driver and CUDA version than before... So, I do not think
> that rebuilding the library would be mandatory.
> Thanks anyway for the tips.
> alain.
>


Point 2 may be the issue. On Unix-like systems, GPULib is linked
against libidl.so, which changes from version to version. An IDL 8.0
build of GPULib does not work properly under IDL 8.2 on linux or
MacOS for this reason -- I know this from first-hand experience.
I'd bet a similar thing is going on in your case too. Without access
to the source code, upgrading GPULib to the 64-bit Windows 7 version
might possibly do the trick. If not, downgrading IDL to version 8.0
seems to be the most likely remaining option.

Good luck,

David





Reply With Quote
  #5 (permalink)  
Old 06-25-2012, 04:38 PM
Michael Galloy
Guest
 
Posts: n/a
Default Re: GPULIB troubleshoot

On 6/25/12 7:11 AM, David Grier wrote:
> On 6/25/12 7:49 AM, alx wrote:
>> On 25 juin, 13:32, David Grier <david.gr...@nyu.edu> wrote:
>>> 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
>>>
>>>

>>
>> Regarding issue 1: preallocation statement was missed in the message,
>> but was done in actual processing.
>> Regarding issue 2: GPUlib cannot be rebuilt (from my side), since the
>> binary DLL (GPUlib.1.4.4) file is distributed without any sources.
>> I forgot to say that, when upgrading OS and IDL, I kept same NVIDIA
>> graphics driver and CUDA version than before... So, I do not think
>> that rebuilding the library would be mandatory.
>> Thanks anyway for the tips.
>> alain.
>>

>
> Point 2 may be the issue. On Unix-like systems, GPULib is linked
> against libidl.so, which changes from version to version. An IDL 8.0
> build of GPULib does not work properly under IDL 8.2 on linux or
> MacOS for this reason -- I know this from first-hand experience.
> I'd bet a similar thing is going on in your case too. Without access
> to the source code, upgrading GPULib to the 64-bit Windows 7 version
> might possibly do the trick. If not, downgrading IDL to version 8.0
> seems to be the most likely remaining option.


Yes, that's what I would suggest in the short term. Building on Windows
is technically possible for users of GPULib, but I would not suggest it
for the faint of heart (it's much easier on Linux and Mac OS X). An
updated version of GPULib should be released shortly.

Mike
--
Michael Galloy
www.michaelgalloy.com
Modern IDL: A Guide to IDL Programming (http://modernidl.idldev.com)
Research Mathematician
Tech-X Corporation



Reply With Quote
 
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off




All times are GMT. The time now is 02:40 AM.


Copyright ©2009

LinkBacks Enabled by vBSEO 3.3.0 RC2 © 2009, Crawlability, Inc.