Results 1 to 3 of 3

Thread: best way to implement rendering and compute

  1. #1
    Newbie
    Join Date
    May 2018
    Posts
    2

    best way to implement rendering and compute

    Hello,

    I am investigating propagation of excitation in neuron and cardiomyocyte networks and modeling it. Currently I programmed algorithms in MATLAB, C++ and CUDA to solve Hodgkin-Huxley like equations. For visualization I generate moving contour plots, that represents excitation in 2D tissue, I coded it in MATLAB, which is convenient, but it takes tens of minutes to render a movie. I am thinking how to improve it and interested in Vulkan, because it can do compute as well as visualization and is open standard. Currently I use C++ with OpenMP, which code is about x2.5 slower than CUDA.
    I want to ask what compute kernel language for Vulkan could you recommend? And is it possible at same time to run compute kernels and visualization rendering?

    Best regards,
    Kestutis

  2. #2
    Senior Member
    Join Date
    Mar 2016
    Posts
    314
    Quote Originally Posted by Kestutis View Post
    [...], but it takes tens of minutes to render a movie.
    That's not so bad if the movie duration is tens of minutes :P

    Quote Originally Posted by Kestutis View Post
    I am thinking how to improve it and interested in Vulkan, because it can do compute as well as visualization and is open standard.
    I would say, go for it.
    I should probably temper your enthusiasm. You already tried CUDA. I wouldn't expect it to run faster just because API switch. Both should use GPGPU.

    Quote Originally Posted by Kestutis View Post
    I want to ask what compute kernel language for Vulkan could you recommend?
    GLSL seems to be the main language (probably best supported, having most materials\examples, and matching\mapping into SPIR-V well). Though Vulkan of course does not care how you got your SPIR-V binary.

    Quote Originally Posted by Kestutis View Post
    And is it possible at same time to run compute kernels and visualization rendering?
    Depends what you mean. You can "run"\schedule both on separate queue. There is no guarantee they will execute concurrently. And obviously both might compete for the same resources\GPU.
    Last edited by krOoze; 05-11-2018 at 12:06 PM.

  3. #3
    Newbie
    Join Date
    May 2018
    Posts
    2
    Thank you for reply. My other question is what is best practice to debug shaders?
    In https://www.lunarg.com/faqs/shader-d...g-tool-vulkan/ is written that "Is a shader debugging tool available for Vulkan available? There are excellent debugging capabilities provided by tools included in the LunarG SDK, and we look forward to other products from the community. In particular, RenderDoc (included in the LunarG SDK) is the best tool currently available for debugging." but https://renderdoc.org/docs/how/how_debug_shader.html is written that "Shader debugging is currently only supported in D3D11"

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