POV-Ray

The Persistence of Vision Raytracer (POV-Ray).

This is the legacy Bug Tracking System for the POV-Ray project. Bugs listed here are being migrated to our github issue tracker. Please refer to that for new reports or updates to existing ones on this system.

Attached to Project: POV-Ray
Opened by Benedikt Adelmann - 2013-03-15
Last edited by Thorsten Fröhlich - 2013-03-15

FS#277 - Max Image Buffer Memory Does not Seem to Work

In POV-Ray’s documentation it says:

3.2.2.2 Max Image Buffer Memory
This INI parameter sets the number of megabytes of RAM to allow for output image caching. If the output image happens to use more than this, a file backed temporary image is used instead.

I used this INI file option because the default value (128 megabytes) seemed insufficient. pov-state backend files were always created and they were remarkably larger than the resulting image (bmp) files. Consequently, I set

Max_Image_Buffer_Memory = 3096

in the INI file so that POV-Ray should, according to the documentation, now be able to use 3 gigabytes of RAM so no backend temporary file would be needed at all (this large they were never).

However, while POV-Ray was rendering I still discovered a pov-state file and it still had a similar size.

Now I am confused: did the INI option not work or have I misunderstood the documentation? If the former is the case, that would be a bug, wouldn’t it?

I tested both under Windows XP and Debian 6.0.5.

Closed by  Thorsten Fröhlich
Friday, 15 March 2013, 12:14 GMT
Reason for closing:  Not a bug
Thorsten Fröhlich commented on Friday, 15 March 2013, 12:13 GMT

You misunderstood the documentation. The state file is always needed as it allows you to stop and continue a render. It has nothing to do with the image buffer though it does contain mostly image data).

BTW, when unsure if a feature works as expected, it is better to first ask in the newsgroups.

Admin
Christoph Lipka commented on Friday, 15 March 2013, 12:41 GMT

For a bit more background information:

The image buffer is where POV-Ray collects the actual computed image data in a plain Width x Height array of pixels, to later convert it to the chosen output file format. The image buffer is normally kept in memory, but for large images it /can/ be kept on disk to avoid swapping. The Max_Image_Buffer_Memory setting specifies at which image buffer size this is done. The file is automatically deleted after render termination, even when an error occurred.

The state file on the other hand is a temporary file created by POV-Ray 3.7 to store all data necessary to continue the render later in case it gets aborted (+C option), or to help in debugging in case of a crash. Obviously this data needs to be written to disk to be of any use. It also obviously needs to hold the image data already generated, because that would usually be held in RAM and therefore lost in case of a render abort. Essentially, the state file is a dump of all messages passed between the POV-Ray front- and back-end, and therefore grows during render.

It would theoretically be possible to exclude the image data messages from the state file when a file is used for the image buffer, instead persisting that buffer in case of a render abort, but this would mean added code complexity so we don't do it.

Benedikt Adelmann commented on Friday, 15 March 2013, 13:07 GMT

OK, thank you. I think pov-state files were not created in POV-Ray 3.6, were they? So when I read that part of the documentation I considered the pov-state file such a backend temporary. I apologize.

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing