Is it possible to store/keep the rendering result in memory only and avoid doing I/O?

I wonder, is it possible to do rendering without saving the result on disk in Blender 2.8?
Relevant to this issue, almost two years ago I submitted a ticket here -->

Although what I posted was not directly relevant to the issue of “rendering without saving on disk” but I was basically trying to use the buffer that keeps the updates on “Viewer Node” to directly access the memory buffer where the rendering result is stored. I’m not sure if Blender 2.8 has a way of doing rendering and storing the results in memory? If so, I would appreciate if someone can let me know how I can do this, specially for different passes (e.g. depth map, RGB etc). This is very important to me as I want to do millions of renderings and I can save enormous amount of time + our cluster’s file system.

If this has not been implemented yet, I would really appreciate if the developers can facilitate this feature by simply adding some variables in the Python API that always refers to the memory buffer where the renderings are stored. This way people like me can save 70-80% by avoiding to store things on disk and instead access the rendering buffers for both Cycles and EEVEE. This way, a user can ideally do something like bpy .. render[‘depth’] and access rendering passes such as depth, rgb and so on.


I do not know if blender has such a thing in it’s option but even if not you could do this by making a so called “RAM disk” in save your renderings to it and than only copy the finished result on your hard disk.
The process of creating such a thing depends on your operating system but if it is done you can access it like a normal hard drive except that it will be empty on reboot.

Since you seam to run Ubuntu:

1 Like

Use a LiveUSB Ubuntu. It runs in ram, so hardware wise it did what you want.

For the blender feature, you could request that feature again, but don’t expect it to be a high priority.