Cache BVH Is No More

BVH caching was originally added in 2.62 in an effort to bypass the (at the time) slow process of building the BVH (Bounding Volume Heirarchy, which is used speed up ray tracing). It would basically store the BVH on your hard drive so that the next time you render the scene (assuming no geometry had changed), it would just read it from the hard drive instead of rebuilding it.

But after just two more releases (2.64), BVH building was sped up dramatically by using all the CPU cores instead of just one. From then on, it was usually quicker to rebuild the BVH for each render than to read the cache from your hard drive, particularly in the case of animations where the BVH changes for each frame and has to be rebuilt anyway.

And thus, that little Cache BVH checkbox became obsolete.

To add fuel to the fire, the BVH cache was never actually cleared automatically (on Windows at least), leaving you with many gigabytes of cached data that you had to delete yourself. Just look in C:\Users\<you>\AppData\Roaming\Blender Foundation\Blender\2.75\cache to see what I mean. Mine was 170 GB before I realized what was going on.

So finally, Thomas has removed the BVH cache feature:

Cycles: Remove the BVH cache feature. […] The BVH cache was added before we had a multi-threaded BVH build, and a lot of other optimizations were done since then, which makes this not useful anymore.

Fix T46162.

Finally, we are free from the clutches of accidentally slow renders and congested hard drives.

6 thoughts on “Cache BVH Is No More

  1. Neat. I never used it myself.

  2. So, the tick box is removed from 2.76? Not sure where it was or if I had it enabled: I’m on Linux Mint Rafaela myself…

  3. that’s crazy. I’ve been using it since always. checked my cache folder, 15 GB.