question

Zeno Pelgrims avatar image
Zeno Pelgrims asked ·

Recommendation on profiling c++ plugins

How is this done among the devs? Are you guys using valgrind/similar? Any information would be appreciated!

apisdkc++
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Thiago Ize avatar image
Thiago Ize answered ·

For a first pass, I suggest using the arnold profiler:

https://docs.arnoldrenderer.com/pages/viewpage.action?pageId=86806604

https://docs.arnoldrenderer.com/pages/viewpage.action?pageId=71013068


Note you can add the profiling instrumentation to your own code so you can measure where time is being spent. This will let you know what code block in your code is taking the most amount of time.


After that, Apple Instruments (for OSX), perf (for linux) or vtune/visual studio (for windows) can be used to see low level details of where your code is spending time (this instruction was 1.3% of the time) and why it might be slow.

1 comment Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Quality. Thanks Thiago.

0 Likes 0 · ·
Max Tarpini avatar image
Max Tarpini answered ·

Just an hint. Before going to profile is good practice to formalize your code in unit tests that can be run without the shader/plugin dep. First because it's almost impossible to profile a shader lib with ie. vtune/perf, second because probably ai.lib can't be run in a free environment (could be locked to Arnold and also it looks like there ain't a debug version).

Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Welcome to the Arnold Answers community.

This is the place for Arnold renderer users everywhere to ask and answer rendering questions, and share knowledge about using Arnold, Arnold plugins, workflows and developing tools with Arnold.

If you are a new user to Arnold Answers, please first check out our FAQ and User Guide for more information.

When posting questions, please be sure to select the appropriate Space for your Arnold plugin and include the plugin version you are using.

Please include images, scene and log files whenever possible as this helps the community answer your questions.

Instructions for generating full verbosity log files are available for MtoA, MaxtoA, C4DtoA, HtoA, KtoA, and Kick.

If you are looking for Arnold Documentation and Support please visit the Arnold Support site.

To try Arnold please visit the Arnold Trial page.

Bottom No panel present for this section.