Rendering and memory management

Anybody from the Blender Foundation here? I would like to know why Blender flushes the memory all the time. I loaded the barbershop demo file. It takes about 6.8 gigs of memory. I render in the viewport in Cycles. It load everything and the memory goes up to about 10.6. If I go back to wireframe display, the memory shrinks back to 6.8. Back in render mode, it reload everything again. If I also render an image, it will double the RAM usage by loading again the exact same stuff it already has in memory, now at 17 gigs. I have 64 gigs of RAM. I could keep all that information in memory and time to first pixel would be greatly reduced. I think Blender should keep textures and geometry in memory as long as there’s space to keep them. Flush it as needed, not automatically as soon as your render is done. If I only make a small change in let’s say a procedural texture, why would the renderer need to reload everything? And if I change one or several textures or geometry, only the ones that have been modified should be reloaded. It’s even the case when you render an image sequence. For every single frame, everything gets reloaded. I’m not a programmer so that’s why I would like to know why Blender works this way. It’s fine if you don’t have a lot of RAM but when you do, maybe an option to keep everything in memory would be of great help.