Announcement

Collapse
No announcement yet.

StarPU: Hybrid CPU/GPU Task Programming

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • StarPU: Hybrid CPU/GPU Task Programming

    Phoronix: StarPU: Hybrid CPU/GPU Task Programming

    Announced this week to the GCC developers was the release of StarPU 1.0.0 for hybrid CPU/GPU task programming...

    http://www.phoronix.com/vr.php?view=MTA4MDI

  • #2
    Would it automaticaly use opencl where best suited or would you still have to program for opencl?

    Comment


    • #3
      Originally posted by chris200x9 View Post
      Would it automaticaly use opencl where best suited or would you still have to program for opencl?
      From what I understand reading their website, you write multiple versions of your code. For example, you provide three implementations of your foo() function: foo_cpu(), foo_cuda() and foo_ocl(). The runtime decides automatically which one to use when you call foo().

      I might be wrong though, since I didn't bother to download anything or look at examples.

      Comment


      • #4
        Originally posted by RealNC View Post
        From what I understand reading their website, you write multiple versions of your code. For example, you provide three implementations of your foo() function: foo_cpu(), foo_cuda() and foo_ocl(). The runtime decides automatically which one to use when you call foo().

        I might be wrong though, since I didn't bother to download anything or look at examples.
        Why would you even bother writing for CUDA then? Nvidia GPUs support OpenCL just as well as AMD and Intel GPUs do.

        Comment


        • #5
          Originally posted by Kivada View Post
          Why would you even bother writing for CUDA then? Nvidia GPUs support OpenCL just as well as AMD and Intel GPUs do.
          Because CUDA is easier to write in and has better support.

          Comment


          • #6
            Originally posted by RealNC View Post
            Because CUDA is easier to write in and has better support.
            And last time I checked only worked on Nvidia GPUs. So why write for less then one 3rd of the market? Most people are going to be using Intel followed by AMD GPUs. Pretty much only Intel gamers that don't use Gallium3D drivers are going to even consider Nvidia, thus I don't see how it justifies the extra effort to write specifically for CUDA unless it's for a very specific task where you're using a bunch of Tesla nodes.

            Comment


            • #7
              Originally posted by Kivada View Post
              And last time I checked only worked on Nvidia GPUs. So why write for less then one 3rd of the market? Most people are going to be using Intel followed by AMD GPUs. Pretty much only Intel gamers that don't use Gallium3D drivers are going to even consider Nvidia, thus I don't see how it justifies the extra effort to write specifically for CUDA unless it's for a very specific task where you're using a bunch of Tesla nodes.
              Usually you don't write CUDA programs for desktop systems. You write them for yourself, your organization, or for entities that want to get the job done.

              If you want to target the consumer market, using OpenCL sounds better. Though I think it might lose to Microsoft's DirectCompute part of DirectX; on developer's forums, you usually see CUDA developers going to DX much more often than they go to OpenCL. (This smells like the OpenGL vs D3D thing all over again...)
              Last edited by RealNC; 03-31-2012, 03:51 PM.

              Comment

              Working...
              X