question

Matthew Hicks avatar image
Matthew Hicks asked ·

Suppressing / Truncating Logging of (Instanced) Lights

Hi,

Is there a way to adjust the logging level or otherwise suppress or truncate the individual logging of (instanced) lights?

I have an environment I'm trying to render with what I'll describe as having a "significant number" of instanced lights, and am finding that OpenImageIO/imageinput.cpp will barf occasionally:

failed assertion ... "Accumulated error messages > 16MB. Try checking the return codes!".

I'm assuming the 'accumulated error messages' are a reference to the log size, and the thousands on thousands of instanced lights reporting their status is the issue - certainly, they seem to be 95% of the log's contents.

My options to reduce the instance count are limited, but even if I'm looking at the wrong thing being able to truncate their repeated entry would make reading the log easier short of feeding it through grep -v.

Cheers,

Matt

lightingkatanainstanceslog
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.

Stephen Blair avatar image
Stephen Blair answered ·

Hi @

Ok, I get it. It's these messages:

00:00:00   566MB         | updating 25 nodes ... 
00:00:00   567MB         |  /pointLight10/pointLightShape10: point_light using 1 sample, 2 volume samples 
00:00:00   567MB         |  /pointLight8/pointLightShape8: point_light using 1 sample, 2 volume samples 
... 
00:00:00   567MB         |  /pointLight2/pointLightShape2: point_light using 1 sample, 2 volume samples

Arnold doesn't support light instancing, so they are all actual lights.

But like with Warnings, there could be something like Max Node Update Messages. I'll open an enhancement request.

Just curious, how many nodes are there?

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 ·

The just released Arnold 6.2.0.0 has the following fix which might interest you:

Limit number of per-light log messages: If there are more than 100 lights, we stop outputting per-light sampling log messages at the regular log verbosity and instead only output these at debug level verbosity. This should help avoid "spamming" the logs when there are many lights in a scene (core#10098).

More details on that release are availableat https://docs.arnoldrenderer.com/display/A5ARP/6.2.0.0. You can download it from https://www.arnoldrenderer.com/arnold/download/


However, the "OpenImageIO/imageinput.cpp" error message has to do with texturing and is not related to these light messages. If this error message goes away after reducing the number of lights, then perhaps it's because these are textured lights? Otherwise it's something else texture related in your scene. Either way, can you provide us with a scene (as simplified as possible) that reproduces this so that we can then try and fix it?

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.

Matthew Hicks avatar image
Matthew Hicks answered ·

I don't seem to have lines telling me how many nodes are being updated. Maybe that's a local config thing. Either way, I'm on katana 3.2.3, ktoa 2.4.0.5, arnold 5.4.0.2.

In the log of a successful render, there are:

45894 lines total

45261 lines of arnoldLightShader details, of which
44773 lines are associated with an 'instancer' element, where
23011 lines are spot_lights, and
21762 lines are point_lights

There seems to be at least 21 kinds of 'light' asset in the element, with at least one creating ~4000 copies.

Thanks for the tips on the textures and info on Arnold light 'instancing'. I'll have to look into that to see if any are being applied in the instancer, but there will almost certainly be textures applied on many of the 'non-instancer' lights.

Is there anything related to the textures I should be looking for?

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.

Stephen Blair avatar image
Stephen Blair answered ·

The "Accumulated error messages > 16MB. Try checking the return codes!" would be something else. Are these textured lights?

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.

Matthew Hicks avatar image
Matthew Hicks answered ·

Hi Stephen,

I think it's the arnoldLightShader announcing the pointcloud point it's being instanced on, the scene graph location of the instanced source geo the arnoldLightShader is on, and it's sample settings.

The format looks like

<timestamp> [INFO python.RenderLog] <Render time> <memory> <pointcloud:pointnum>:<scenegraph_location>:arnoldLightShader: spot_light using 1 sample, 2 volume samples

Individually it's definitely useful as a sanity check, but en masse the utility of the information being imparted diminishes rapidly, particularly if they're from the same instance source. Being able to set a truncate level of say, the first or last 5 or so would make it a lot more manageable.


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.

Stephen Blair avatar image
Stephen Blair answered ·

What's being logged for the lights? Just that failed assertion?

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.