I don't know how much geometry you have in the scene but this may help. Since you say CAD data - how do you get it into Max? Import as Body objects or already as mesh? If you are using Body objects, make sure you specify a reasonable render tesselation resolution and make sure it's not using different resolutions for the viewport and the rendering. Also, when you convert Body objects to Mesh/Poly they will have all their patches unwelded which will add a lot of memory overhead depending on the number of subelements. A good way to get rid of them is to weld with the ProOptimizer modifier (enable 'Merge Vertices' with a tiny threshold, leave everything else as it is, run 'Calculate' and convert to Mesh/Poly). Don't weld as Mesh/Poly command as this will invalidate explicit normals.
Using Render Elements will increase memory usage since it's allocates additional memory per element, this can easily add a few GB if you use a few of them at this resolution. As for VFB being displayed, I'm not sure how much overhead this adds.
Another option is to use Corona Proxy for each instanced mesh. And the term 'Instance' in the helpdesk probably means unique mesh, that's at least how the term is defined in other places such as Corona's MultiMap.