← All ideas
  • Published 18 Sep 2020

NVRTC CUDA as alternative to missing GPU OSL support

It would be amazing to have the ability to use a script node using CUDA, with NVRTC to dynamically compile and link the script code.

I don't know anything about how the subsystem works already, I'd need to look around much more, but since I don't see many references to NVRTC, I'm guessing each node represents it's own __global__ launch? If this is true, I would guess this kind of thing would be easier to pull off? Each script node would represent it's own __global__ launch and store its results in global memory for the next launch to use. Would something like this work?

CUDA isn't for everybody, but it's c like, the OSL type pragmas for input and output could be sculpted to the corresponding CUDA code to dynamically compile.

I think the sharing of complex scripts by different content creators could be a rich source of new ideas for how to use Blender. Fractal type things would also become much easier to implement. I think I would also tend to use it to replace medium length math node chains for readability. Not to mention that the code would fuse into one launch (assuming right now in cycles each node is associated with a launch).

0%

Development Status: Open

Upvote 0 Downvote 0
cpdurham
18 Sep 2020

0 Comments