Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

AVX vs SSE4 for Partitioned Ray-Tracing

53 views
Skip to first unread message

Thomas

unread,
Apr 23, 2013, 11:22:16 AM4/23/13
to
Hello

I've been playing around with AVX code to try and speed-up my ray-tracer
which is accelerated using a SAH based kd-tree.

My triangle intersect routines are built using the intel embree library
which makes it pretty easy to swap between an ssef (4 floats) and an avxf (8
floats) structure. So far it seems like swapping to AVX actually slows
things down a little.

The problem is that an avxf multiply seems to take about 1.4x as long as an
ssef multiply on my machine, so you only see a significant benefit if you're
intersecting at least 4 and preferably more triangles. I also use ssef for
intesecting the leaf-node bounding box - which doesn't lend itself well to
avxf. This means that the cost of intersecting the bounding box is very
small compared with the cost of intersecting the contents right down to
about 4 triangles. Consequently, most leaf nodes contain around 4 triangles
and using avxf to intersect them turns out to be more expensive than ssef.

Has anyone else had this experience?

Thanks
Thomas


0 new messages