Search - User list
Full Version: Volume Convolution: VEX & C++ vs OpenCL
Root » Work in Progress » Volume Convolution: VEX & C++ vs OpenCL
animatrix_
Volume convolution on the GPU using OpenCL.

For 27M voxels using 100 iterations, OpenCL is 650 times faster than C++ and 12525 times faster than VEX.

TwinSnakes007
Very nice speedup…I can imagine this is Gold in Production Scenes.

How much of a lift is it from VEX syntax to OpenCL syntax?

I take it you cant generate VEX->OpenCL?
animatrix_
Yes these prove to be invaluable in production providing unreal performance, especially on powerful GFX cards such as Quadro M6000.

Syntax is based on C99, so not that much different than VEX. It's more lower level than VEX though and you don't have some common functions that are taken for granted in VEX. Things like point clouds, ray intersections, matrices are not available out of the box.

You can't really auto generate OpenCL from VEX.

If you want this in Houdini, submit an RFE to SESI as they would put more priority if it's requested by multiple users.

A lot of SOPs (deformers, volumes/VDBs, etc) could be incredibly faster if they were rewritten in OpenCL with the ability to run them on the CPU per node. If SESI adds an OpenCL Wrangle SOP to H16, they could all be implemented using this node, which would make Houdini more open, and much much faster especially in production environments where heavy data sets are so common.
TwinSnakes007
Yeah, it seems like such an obvious natural progression for H to add some kind of GPU acceleration for these large structured data sets.

I dunno how much my voice can add to the topic, since I'm just an Indie user.
animatrix_
SESI values all opinions so feel free to submit your RFEs.
cs_pix
animatrix3d
Things like point clouds, ray intersections, matrices are not available out of the box.

Hi,

Yeah that's what I'm faced with right now. I want to compute ambient occlusion on a landscape geometry but can't figure out how to find if a ray, out from a point, intersects with some polygon on the geometry.

Do you have any good reference for this anywhere? All the code I found so far is about raytracing a scene in OpenCL.

I have to vectors for origin and direction but how do I check if they intersect with a polygon (or Volume) on the geometry?

Thx.
Christian
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB