Page 2 of 2 FirstFirst 12
Results 11 to 16 of 16

Thread: OpenCL Vulkan interop: how to do it?

  1. #11
    Quote Originally Posted by ezorzin View Post
    According to this vision, since my question is about the availability of a an OpenCL/GL interop in the present/future or any alternative similar mechanism implemented in Vulkan, shouldn't we conclude that OpenCL is dying, at least from the Nvidia side?
    Um, yes. That's been reality basically since NVIDIA stopped updating their OpenCL versions.

    Quote Originally Posted by ezorzin View Post
    At the same time, also Khronos seems not providing enough information about the topic of my question: not a single complete example of interop between OpenCL and OpenGL in Vulkan.
    I assume there's a typo or something in there, since "interop between OpenCL and OpenGL in Vulkan" makes no sense. I mean sure, you can probably chain OpenCL/OpenGL interop with OpenGL/Vulkan interop, but it's unlikely that there are enough people who want to do that that you're going to find examples. Furthermore, that's not something that Khronos would want to endorse because... well, it's prima facie silly.

    Quote Originally Posted by ezorzin View Post
    When I am asking for an official declaration I speak about something like this:

    https://www.lunarg.com/faqs/vulkan-o...eroperability/

    However that is just the very short reply to a simple question, which in fact exactly reflects the core of my question here.
    They give no full answer to that question: it does not give any detailed information. But because they say they have made a "...strategic roadmap direction decision..." I got interested in understanding if such kind of decisions are somehow undisclosed in a way we developers have public access to, or for some reasons they are secret and we can only speculate around them.
    Nobody is confused about what you're asking for. But the fact of the matter is, they're not going to give people those details until they're ready to give people those details. And even then, until actual extensions/Vulkan versions/implementations come out, any such details are mere words, worth only the medium they're printed on.

    As an example, there were lots of "official statements" in 2006-7 about a revamped OpenGL API. Indeed, they were incredibly detailed, including example code of what the revamped "Longs Peak" OpenGL API would look like.

    Nothing came of that (or at least, what came of it was very much not what was promised). Words are meaningless without action.

    Quote Originally Posted by ezorzin View Post
    In the end, at the moment, I can't find either an example of what I am asking for, nor a statement of support (or drop of support) in favour of it. While other features of Vulkan are fully advertised everywhere.
    That's because those "features of Vulkan" are actual features of Vulkan. They're not ideas or plans or "statements of support"; they're stuff you can do right now.

    Quote Originally Posted by ezorzin View Post
    You see why I have doubts about this issue regarding the interop?
    You should have doubts about it. Indeed, the statement you cite is not about interop; it's about merger. It's essentially saying that the intent going forward is for Vulkan to adopt the things that OpenCL can do which Vulkan cannot.

    And again, since nothing has actually moved beyond the planning stage, you should not tether your current production to something that might not ever actually happen.

    Basically, don't plan on it happening.

    Quote Originally Posted by ezorzin View Post
    I understand what you say about looking around at what people are doing, however I would like to have more control on my projects, since they depends also on those decisions and I am open to other options too. For instance, if I pay the fee for an academic subscription, would I have access to such information I am looking for? Or there is no way to know it, simply because nobody knows what I am asking for - for the simple reason the information I am looking for does not exist - ?

    What is your opinion about this?
    Well, you seem to have two choices. Choice #1 is to pay some money and hope that this gives you greater access to the Khronos Group's progress and process. Though you'll undoubtedly have to sign an NDA over anything you learn. How much money it will take to get access to what you want to know is beyond my knowledge.

    But you also need to recognize that some things are not in Khronos's control. All Khronos does is publish and support standards. They do not implement them. They cannot force NVIDIA to implement OpenCL. Even if they try to merge OpenCL with Vulkan in some way, they cannot force NVIDIA to implement that merger (which will almost certainly be an extension or optional Vulkan 1.2 feature, which NVIDIA would be free to not implement as they see fit).

    So even if Khronos plans to do something, that guarantees nothing about whether it will be of practical benefit to you. You have to look farther than that.

    Choice #2 is to stop worrying about what will happen beyond 3-5 years. Ask yourself these questions, given everything you know as it currently stands:

    1: Will OpenGL still be available and usable on the platforms I'm interested in supporting, in 3-5 years?
    2: Will OpenCL still be available and usable on platforms I'm interested in supporting, in 3-5 years?
    3: Is OpenGL/OpenCL interop acceptable for my current project(s)?

    If the answer to all of these questions is "yes", then you should move forward with what you have, and let the future sort itself out in due time. For question 1, the answer will be "yes" for any non-MacOS platform, but you already knew that. For question 2, the answer will be "yes" for any non-NVIDIA, non-MacOS platform.

  2. #12
    Junior Member
    Join Date
    Dec 2018
    Posts
    7
    I see what you mean, we could summarise it with the socratic sentence: "we know that we do not know".
    Considering what you are suggesting and since neither the GPU manufacturers or Khronos discloses their future plans (and even in case they do it officially they have no practical 100% validity), my logical conclusion is that if I want to be al least a little bit safer than I am now in developing some code on my current framework - I am now speaking of the OpenCL/GL interop - I would be better moving my physics simulation computation inside an OpenGL shader, compile it with SPIR-V and plotting the graphics output through Vulkan.

    Since the latter toolchain already exists, it is documented, and also looks to be supported by various manufactures (Nvidia too), I would say all this sounds more promising than "hoping" somebody will continue supporting my current framework.

    In choosing this, I would pay the cost of porting my code "now" on a different framework but I would get the advantage of a longer estimated future maintainability.
    On the contrary, if I don't do this now, later it could be more difficult for me to port my code: the "zero-effort" solution of not doing anything, leaving my code as it is, and waiting for an integration of the OpenCL interop in Vulkan (as suggested by the link i reported from Lunar-G), despite being optimal to me, seems to me to have lower chances.

    And doing everything in Linux, since I don't want to jump the down the cliff with my lovely mac

    Does this make any sense?

  3. #13
    Senior Member
    Join Date
    Mar 2016
    Location
    vulkan.hys.cz
    Posts
    358
    Feels to me like a lot of overthinking is happening here.

    In the meantime I asked Khronos directly about OCL interop: https://github.com/KhronosGroup/Vulk...stem/issues/42

  4. #14
    Junior Member
    Join Date
    May 2003
    Posts
    8
    Quote Originally Posted by krOoze View Post
    Feels to me like a lot of overthinking is happening here.

    In the meantime I asked Khronos directly about OCL interop: https://github.com/KhronosGroup/Vulk...stem/issues/42
    Thanks krOoze - I replied on the GitHub issue - any feedback welcome!
    Neil Trevett
    VP Developer Ecosystems, NVIDIA
    President, Khronos Group
    Chair of OpenCL and Vulkan Portability

  5. #15
    Junior Member
    Join Date
    Dec 2018
    Posts
    7
    Quote Originally Posted by krOoze View Post
    Feels to me like a lot of overthinking is happening here.

    In the meantime I asked Khronos directly about OCL interop: https://github.com/KhronosGroup/Vulk...stem/issues/42
    That's very kind of you, thanks: very useful information!

  6. #16
    Newbie
    Join Date
    Jan 2019
    Posts
    1
    really good ! excellent !
    -----------------------------------
    https://bit.ly/2VJGOc1
    https://bit.ly/2W6kE3Y
    https://profiles.wordpress.org/touriran/

Page 2 of 2 FirstFirst 12

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Proudly hosted by Digital Ocean