Doesn't work with latest Nvidia Drivers...

Help
James78613
2010-10-22
2012-12-21
  • James78613
    James78613
    2010-10-22

    Hi,
    Great stuff but freezes up when running Clootils with the new nvidia 260.x driver. I have been using it with an older driver with no problems but the new NVidia Nsight 1.5 tools for visual studio requires dirvier 260.x so im screwed :(

    Why is Clootils crashing? Is there a work around? I really need this ASAP :(

    Thanks

     
  • mux85
    mux85
    2010-10-23

    what do you need clootils for? there may other programs to do the same thing.
    what version of cloo are you using? in my experience the 0.8.x version has some serious bugs. i've gone back to 0.7.4.
    i'm sorry to say that probably cloo is not supported anymore by its creator so if your project is still at an early stage maybe it's better for you to use something else

     
  • James78613
    James78613
    2010-10-25

    was using clootils to verify that the dev environment was working with the latest drivers and opencl 1.1 for nvidia. I found something similar called OpenCLNet but I thought I would give CLoo a go first. Have you tried OpenCLNet? Do you know of another .net wrapper that is activly supported?

    Thanks

     
  • mux85
    mux85
    2010-10-25

    i never tried opencl.net and i don't know if you'll have more support with that. its forum is empty and it was last updated more than a month ago

     
  • James78613
    James78613
    2010-10-25

    i guess i cld try to debug CLoo and find out why it has problems with the latest 260.x nvidia drivers. Let me ask you something… is there a way to have one kernel signal other kernels to stop and return? right now i use a global variable that all kernels check to see if they should stop and return if another kernel (that finds the answer) set the flag variable to true. Note that all kernels run in a very long for loop i <= 99999999. So all kernels run a long loop looking for a true condition. In the loop each kernel checks the global flag to see it another kernel found the answer first. if another kernel found the answer then all the other kernels know it via the flag and return. So the one that finds the answer sets a global flag which the other kernels read then exit the loop and return. This actually works well and gave a good performance increase but it uses global memory which is slow. if there was an evnet or something that could signal all other kernels to stop and return then it wld be even better!

    thanks

     
  • mux85
    mux85
    2010-10-26

    sorry i don't know. you should try to ask on some opencl forum (amd, nvidia or khronos)

     
  • James78613
    James78613
    2010-11-08

    hi nythrix

    I'm still around. I'm still using CLoo with my app just can't use the latest tools from Nvidia. I really like CLoo. I get a 28X speed increase over my 4 core (8 thread) version. So I'm very happy about that. I do have a question though. When my host code invokes the GPU code, the host gets blocked and I can't even move my mouse until the GPU code returns. I even placed the host calling code in a background worker thread. I haven't really looked into fixing it yet. Do you have any ideas? It very similar to the ClooUtil app. Basically I created my own code in a separate test that CloUtil calls.

    Anyway, THANKS for your work. Like I said 28X faster :)

     
  • nythrix
    nythrix
    2010-11-09

    Wow, that was quick :)

    Intensive jobs can indeed freeze the host thread. Depending on your drivers and mode of invocation of command queue methods (blocking/asynchronous) there are different calls that trigger the execution and block the caller: Execute, Read/Write or Finish. You'll need to check the OpenCL specs for more info on this.

     
  • nythrix
    nythrix
    2011-01-23

    This should've been fixed now.