Request for support dynamic parallelism in OCL 2.0 and HSA backends

Issue #20 new
oscar bg created an issue

Hi, first sorry it's the bad location for suggestions but I'm pretty interested in this project and I see in https://bitbucket.org/multicoreware/cppamp-driver-ng/wiki/HSA%20Features that HSA backend is relaxing restictions of C++ AMP language and exposing new features.. I assume some if not all of this features can also be exposed in an OpenCL 2.0 backend (say SVM, platform atomics,etc..) which I see you have begin working as a ocl2.0-exp branch exists.. I would like to know about "Relax C++ Lanauge Rules on HSA" but right now I don't have access to the document so perhaps what I ask is already implemented and not noticed by me.. anyway I'm specifically interested in if it's possible in C++ AMP to expose dynamic parallelism (GPU functions can call GPU functions and support for recursion of GPU functions) which is supported both in OpenCL 2.0 (also SPIR2) and presumably HSA..

Comments (3)

  1. Jack Chung

    Hi, oscarbg, thanks for your bringing this up. I'm sorry that as of now, none of available OpenCL 2.0 driver or HSA runtime have infrastructure ready to implement dynamic parallelism.

    Currently in this C++AMP implementation there's a "asynchronous parallel_for_each" which will eventually be evolved into dynamic parallelism.

    OpenCL 2.0 backend (ocl20-exp) is an early experiment. Our main focus is on HSA at the moment. But I think adding SVM and platform atomics won't be that hard.

  2. oscar bg reporter

    I don't know if dyn. par. on HSA runtime is ready, but I think AMD beta OCL 2.0 drivers supported dyn. par. already.. so are you sure about OpenCL 2.0 AMD drivers? I'm saying that here: http://support.amd.com/en-us/kb-articles/Pages/OpenCL2-Driver.aspx I can read Highlights of AMD OpenCL 2.0 Driver Support OpenCL 2.0 Core Features: Dynamic Parallelism

    Also pretty sure also about dyn. par. on Intel OpenCL 2.0 drivers using either CPU device or GPU device on Broadwell GPUs (in market this month) as they have a OCL 2.0 driver that has passed OCL 2.0 Khronos conformance tests for some months already..

  3. Log in to comment