Announcement

Collapse
No announcement yet.

Very high unloading times after rendering

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Very high unloading times after rendering

    Hey,
    I have a scene here with some VrayDisplacement and some ForestPack objects which takes around 10 minutes to unload after finishing or canceling a render. The rendertime is actually quicker then unloading. While unloading, you can see the 3dsMax task slowly lowering RAM usage. Is there anything that can be done to speed things up?

    V-Ray Next 4.10.02, Max 2017, Forestpack 6.20

    Regards

    Oliver
    https://www.behance.net/Oliver_Kossatz

  • #2
    Yes, there is. Most common reason for this is proxy files created with earlier V-Ray version - those are not optimized and if there are thousand of proxies in the scene such slowdowns are monitored at the end of the rendering.

    Please stay tuned I'll let you know how to determine whether the slowdown is indeed caused by old V-Ray Proxy files and what to do in order to speed up RAM releasing after render ends.
    Last edited by svetlozar.draganov; 08-04-2019, 09:03 AM.
    Svetlozar Draganov | Senior Manager 3D Support | contact us
    Chaos & Enscape & Cylindo are now one!

    Comment


    • #3
      In addition to what Svetlozar pointed out, it would be great if you can get us a scene with this issue so that we can profile the exact reason for the slowdown.

      Best regards,
      Vlado
      I only act like I know everything, Rogers.

      Comment


      • #4
        OK, I wrote article about this since it happens from time to time. Please visit the link bellow, check if Optimize for Rendering is enabled for the proxy files used in the scene and let us know if slowdown disappears when it is enabled.
        https://sites.google.com/chaosgroup....-v-ray-proxies

        Looking forward to hearing from you.
        Last edited by svetlozar.draganov; 09-04-2019, 12:53 AM.
        Svetlozar Draganov | Senior Manager 3D Support | contact us
        Chaos & Enscape & Cylindo are now one!

        Comment


        • #5
          Quick note to confirm we were having this exact issue (long time unloading after rendering). went through converting each proxie back into a polymesh, then back into a new proxy with "optimise for rendering" checked and no issue. Nice to see the proxies vray next created were x4 - x5 times smaller too!

          Comment


          • #6
            Very nice to hear.
            However, You should know that in that mode partial proxy loading is *not* possible.

            So, provided your proxies are somewhat compact geometries, like a bottle, a tree in full view, a car tyre, or other such type of nodes, even if there are many in a scene, all is fine, and you can benefit from the speedups.

            If your proxy is however very extensive, like a whole building with the furniture, a terrain with all the scattered geometry, and so on, this option would prevent piecewise loading, and make you incur in serious RAM penalties.
            Lele
            Trouble Stirrer in RnD @ Chaos
            ----------------------
            emanuele.lecchi@chaos.com

            Disclaimer:
            The views and opinions expressed here are my own and do not represent those of Chaos Group, unless otherwise stated.

            Comment


            • #7
              I have no proxies in my scene at all. I will prepare it and send it to Vlado.
              By the way, we found out today that proxies now support modifiers like bend, VrayDisplacementMod and so on. Couldn't find anything in the docs, when was this added?
              https://www.behance.net/Oliver_Kossatz

              Comment


              • #8
                Originally posted by kosso_olli View Post
                I have no proxies in my scene at all. I will prepare it and send it to Vlado.
                By the way, we found out today that proxies now support modifiers like bend, VrayDisplacementMod and so on. Couldn't find anything in the docs, when was this added?
                The same applies to rendertime (ie. dynamic memory pool) displacement, in fact, especially if it's tasked with a lot of triangles (ie. screen-space, low edge size/big image resolution).
                If you have the ram, set it to 3d, static, and the issue of ram unloading should go away.
                You'll likely also gain some decent speed in rendering, albeit with a longer startup phase (as displacement gets calculated and then put into the acceleration structures as explicit triangles).
                Lele
                Trouble Stirrer in RnD @ Chaos
                ----------------------
                emanuele.lecchi@chaos.com

                Disclaimer:
                The views and opinions expressed here are my own and do not represent those of Chaos Group, unless otherwise stated.

                Comment


                • #9
                  Originally posted by kosso_olli View Post
                  By the way, we found out today that proxies now support modifiers like bend, VrayDisplacementMod and so on. Couldn't find anything in the docs, when was this added?
                  Not sure, it's been in the builds for a while, but I can check the exact build if you need it? Keep in mind that adding any modifiers on the proxy will turn it into a regular mesh instead of being loaded on demand.

                  Best regard,
                  Vlado

                  I only act like I know everything, Rogers.

                  Comment


                  • #10
                    Originally posted by ^Lele^ View Post
                    The same applies to rendertime (ie. dynamic memory pool) displacement, in fact, especially if it's tasked with a lot of triangles (ie. screen-space, low edge size/big image resolution).
                    If you have the ram, set it to 3d, static, and the issue of ram unloading should go away.
                    You'll likely also gain some decent speed in rendering, albeit with a longer startup phase (as displacement gets calculated and then put into the acceleration structures as explicit triangles).
                    I didn't open the scene today, but I think it already is the way you described for the displacement. Anyway, a scene was sent to Vlado.

                    Originally posted by vlado View Post
                    Not sure, it's been in the builds for a while, but I can check the exact build if you need it? Keep in mind that adding any modifiers on the proxy will turn it into a regular mesh instead of being loaded on demand.

                    Best regard,
                    Vlado
                    It would be nice if any info regarding this feature could be added to the documentation. I checked yesterday but could only find the outdated notes that this is not supported.
                    Last edited by kosso_olli; 10-04-2019, 08:21 AM.
                    https://www.behance.net/Oliver_Kossatz

                    Comment


                    • #11
                      Originally posted by kosso_olli View Post

                      It would be nice if any info regarding this feature could be added to the documentation. I checked yesterday but could only find the outdated notes that this is not supported.
                      Thanks for the feedback, added it into ToDo list of our Docs Team!
                      Svetlozar Draganov | Senior Manager 3D Support | contact us
                      Chaos & Enscape & Cylindo are now one!

                      Comment


                      • #12
                        Originally posted by kosso_olli View Post
                        It would be nice if any info regarding this feature could be added to the documentation. I checked yesterday but could only find the outdated notes that this is not supported.
                        While it gets into the Docs, know the logic is pretty simple: it's as if you chose the full mesh preview in viewport, and then added modifiers.
                        It's slightly better because it won't slow down the max session, but -as Vlado said- will negate the on-demand, piecewise loading of the proxy.
                        Conceptually, one should be done with all the operations on a mesh, and then proxy it (i know of exceptions, of course. still.).
                        Lele
                        Trouble Stirrer in RnD @ Chaos
                        ----------------------
                        emanuele.lecchi@chaos.com

                        Disclaimer:
                        The views and opinions expressed here are my own and do not represent those of Chaos Group, unless otherwise stated.

                        Comment


                        • #13
                          Just wondering, would it be possible to display a warning if a proxy should be reexported for performance optimization ?
                          Gil Guminski
                          cynaptek.com

                          Comment


                          • #14
                            Originally posted by spyzor View Post
                            Just wondering, would it be possible to display a warning if a proxy should be reexported for performance optimization ?
                            I doubt it, purely because the "performance optimisation" is so only in this specific case, it would be detrimental to rendertimes and memory management when the scene was with different kinds of proxies (f.e. whole terrains, whole forests), and extensive enough to not fit in RAM.
                            You can however query the proxy for its properties with the commandline found in the bin folder of your v-ray install, like so:

                            Code:
                            ply2vrmesh -info myProxy.vrmesh
                            If the "Number of voxels" parameter reads other than 1, it'll be slower to load and unload than if it did read as 1.
                            This, let me stress it, *only* if the proxy (with all the rest of the scene data) indeed fits in RAM.
                            Lele
                            Trouble Stirrer in RnD @ Chaos
                            ----------------------
                            emanuele.lecchi@chaos.com

                            Disclaimer:
                            The views and opinions expressed here are my own and do not represent those of Chaos Group, unless otherwise stated.

                            Comment


                            • #15
                              We are still suffering from extreme unloading times. Sometimes it takes 15-20 minutes, depending on the RAM the scene used. The more RAM, the slower the unloading process. No proxies in the scene, ForestPack instances the objects from meshes in the scene. Converting to proxies doesn't make any difference in terms of speed or RAM usage, it is exactly the same.
                              Last edited by kosso_olli; 11-10-2019, 07:47 AM.
                              https://www.behance.net/Oliver_Kossatz

                              Comment

                              Working...
                              X