1. Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

GPGPU API for C# that can use multiple GPUs and CPU at the same time

Discussion in 'Programming & Webmastering' started by tugrul_SIMD, Apr 13, 2017.

  1. tugrul_SIMD New Member

    Joined:
    Apr 13, 2017
    Messages:
    1 (0.06/day)
    Thanks Received:
    3
    "Cekirdekler API" is an open-source project which I uploaded to github newly.

    This API helps developer to rewrite a bottlenecking hotspot loop or somewhat simple algorithm as C99 code and have it run on all selected OpenCL-capable devices at the same time. At each compute iteration, all devices get fair amount of work depending on their performances and capabilities. They can be totally different vendors and different segments' GPUs.

    You can find it in github:

    (wiki) https://github.com/tugrul512bit/Cekirdekler/wiki

    (download) https://github.com/tugrul512bit/Cekirdekler

    also there is a short tutorial about it in here:

    https://www.codeproject.com/Articles/1181213/Easy-OpenCL-Multiple-Device-Load-Balancing-and-Pip

    Traditional hello-world looks like this:

    Code:
                ClNumberCruncher cr = new ClNumberCruncher(
                    AcceleratorType.GPU, @"
                        __kernel void hello(__global char * arr)
                        {
                            printf(""hello world"");
                        }
                    ");
    
                ClArray<byte> array = new ClArray<byte>(1000);
                array.compute(cr, 1, "hello", 1000, 100); 
    
     
    Ripper3, Jizzler and silentbogo say thanks.

Currently Active Users Viewing This Thread: 1 (0 members and 1 guest)