Results 1 to 7 of 7

Thread: StarPU: Hybrid CPU/GPU Task Programming

  1. #1
    Join Date
    Jan 2007
    Posts
    14,599

    Default 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. #2

    Default

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

  3. #3
    Join Date
    Jul 2008
    Location
    Greece
    Posts
    3,788

    Default

    Quote 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.

  4. #4

    Default

    Quote 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.

  5. #5
    Join Date
    Jul 2008
    Location
    Greece
    Posts
    3,788

    Default

    Quote 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.

  6. #6

    Default

    Quote 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.

  7. #7
    Join Date
    Jul 2008
    Location
    Greece
    Posts
    3,788

    Default

    Quote 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 at 03:51 PM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •