[Bf-cycles] Differences between svm and osl performance relatd to texture filtering?

Martijn Berger martijn.berger at gmail.com
Sun Jul 7 11:39:16 CEST 2013


I did some quick tests to empirically test the hypothesis that osl
performance is made much worse by texture filtering or translation of
structures.

First texture filtering:

I made a scene with a plane, a camera and an environment of a solid color:

I added a texture and measured:

svm:          OSL:        modified OSL:

0:12:40      0:27:72     0:26:60
0:12:40      0:27:90     0:26:75
0:12:40      0:28:03     0:26:53

modified OSL is a one line change to force bi-linear texture interpolation:

intern/cycles/kernel/osl/osl_services.cpp: ~ line 772 add:
options.interpmode = TextureOpt::InterpBilinear;

I am getting what looks like a measurable significant result but no where
near what we need to explain performance gap.

Diffuse:

svm:          OSL:
0:09:10      0:11:25
0:09:10      0:11:17
0:09:08      0:11:17

noise texture

svm:          OSL:
0:17:02      0:23:18
0:16:97      0:23:00
0:16:98      0:22:96

both of the above are in line with each other both would indicate a
performance loss of about 25 % on using OSL for trivial shaders due to
translation of data, OSL initialization etc.

To me it seems that image textures are getting a huge hit and that the
SmartBicubic filter is not the main problem.

Hope this info helps. I am continuing the dig to find the root cause.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.blender.org/pipermail/bf-cycles/attachments/20130707/b0c27326/attachment.htm 


More information about the Bf-cycles mailing list