GithubHelp home page GithubHelp logo

Comments (18)

kashif avatar kashif commented on July 18, 2024

@Felix-neko as far as I can see... it seems to be cudnn bug... I cannot see anything wrong that we are doing in calling the APIs... I will keep looking though...

from cudnn-python-wrappers.

Felix-neko avatar Felix-neko commented on July 18, 2024

Oy vey!

[crying]

from cudnn-python-wrappers.

kashif avatar kashif commented on July 18, 2024

another thing to check might be the workSpaceSizeInBytes... perhaps you can try to explicitly set it and try if that helps?

from cudnn-python-wrappers.

kashif avatar kashif commented on July 18, 2024

@Felix-neko also note that when beta = 0 the output is not read and can contain any uninitialized data (including Nan numbers)...

from cudnn-python-wrappers.

Felix-neko avatar Felix-neko commented on July 18, 2024

@kashif

But AFAIK, beta=0 means that the old data, whatever it was, should be totally replaced with new data. Isn't it?

AFAIK, what you said is alpha=0.

from cudnn-python-wrappers.

kashif avatar kashif commented on July 18, 2024

@Felix-neko true yes you are right... 💣

from cudnn-python-wrappers.

kashif avatar kashif commented on July 18, 2024

yes @Felix-neko so then can you kindly try to create a cudnnGetConvolutionForwardAlgorithm() with the type: CUDNN_CONVOLUTION_FWD_NO_WORKSPACE and use that?

from cudnn-python-wrappers.

Felix-neko avatar Felix-neko commented on July 18, 2024

I'll try to do it when get to work. Alas, I don't have all the software installed at home.

from cudnn-python-wrappers.

kashif avatar kashif commented on July 18, 2024

@Felix-neko I just tried it... but no luck... same behaviour 👎

from cudnn-python-wrappers.

philvdm avatar philvdm commented on July 18, 2024

I think that alpha and beta are not properly handled in libcudnn_rc2.py
alpha and beta must be passed per reference but that reference MUST be of proper type (e.g double if double type is chosen). From what I see, alpha,beta are always passed as float pointers

from cudnn-python-wrappers.

kashif avatar kashif commented on July 18, 2024

@philvdm yes I thought so too, so I explicitly passed double for the double case but it did not help... the API takes just a pointer to the alphas and betas and the docs do not mention their types explicitly....

I have also emailed nvidia with this behaviour as well...

from cudnn-python-wrappers.

philvdm avatar philvdm commented on July 18, 2024

I am from nvidia ;-) and I can confirm that alpha/beta needs to be of the same type than the tensor.

As a test, just pass Alpha=0 and beta=1, your tensor should be unchanged.

from cudnn-python-wrappers.

kashif avatar kashif commented on July 18, 2024

@philvdm ah cool thanks for the info! 🍰 I will try it out...

from cudnn-python-wrappers.

kashif avatar kashif commented on July 18, 2024

@philvdm 🎉 cool it works! I will fix up the bindings to set the appropriate ctype depending on the datatype of the tensor/filter...

from cudnn-python-wrappers.

hannes-brt avatar hannes-brt commented on July 18, 2024

Thank you very much @kashif, @philvdm, and @Felix-neko for solving this. I just checked again and it works for me too now.

from cudnn-python-wrappers.

Felix-neko avatar Felix-neko commented on July 18, 2024

@hannes-brt
Can you also update your cudnn2 branch?

from cudnn-python-wrappers.

hannes-brt avatar hannes-brt commented on July 18, 2024

Just use the master branch now, please. All cudnn R1 is backed up on the cudnn1 branch now, so master will have the bleeding edge R2 code.

from cudnn-python-wrappers.

Felix-neko avatar Felix-neko commented on July 18, 2024

@hannes-brt
Great! Thank you, comrade!
^__^

from cudnn-python-wrappers.

Related Issues (8)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.