Huge increase in G8F load times since circa 4.14 upgrade (morph option overload?); steps to resolve?

I don't know if the problem I'm seeing is due to the 4.14 upgrade or simply coincident with it. Anyway. Roughly since the upgrade, G8F figures take me upwards of 7 minutes to load. IMO, that's an unacceptably long length of time just to get a single figure in the scene.

I've seen it said here and there that this happens when you have lots of morphs available for a given figure type (as I do,) since it has to load all the morph options on figure creation. I've seen solutions related to database and filesystem manipulation hinted at. Does anyone have a step-by-step fix for this that doesn't involve deleting large numbers of files I paid for and expect to be able to use?

Thanks for your time.

Comments

  • simplest solution would be for the program to just load a list of morphs and then load the actual morphs when you pick on it to choose... 
    ---
    on the other hand that is an increase from the couple of minutes load g8s ... in 412 
    I will do a check

     

  • simplest solution would be for the program to just load a list of morphs and then load the actual morphs when you pick on it to choose...

    That's what it does. It still needs to know which morph is connected to which other morphs, though, and it's establishing all those links which takes much of the time.


    ---
    on the other hand that is an increase from the couple of minutes load g8s ... in 412 
    I will do a check

     

     

  • just loaded a G8 and a G1 character took 2 minutes. 
    In this case the g8 has an invisible head and the g1 has an invisible body and is parented to the g8 neck 
    because the morphs I used for my character heads are not available on later generations. 
    ----
    The two minutes is the time from the logfile but there was probably another minute of assorted pauses including 30 secs to load the missing files window. 
    Whoops .. goof that was into 412 
    opening 414 now 
    took 2 m 38 seconds in the logfile
    ----
    so yeah, you shouldn't be seeing 7 minutes. 

    rip 214 9m42s 2048i.jpg
    2000 x 2000 - 1M
  • simplest solution would be for the program to just load a list of morphs and then load the actual morphs when you pick on it to choose... 
    ---
    on the other hand that is an increase from the couple of minutes load g8s ... in 412 
    I will do a check

     

     

    4.14 definitely seemed to make it worse for me, but then, my upgrade to 4.14 was pretty fraught. I know that load times will differ for different people depending on how many morphs they have, but I'd be interested to know if you see any appreciable difference. It's reducing my desire to use the product. I don't want to have to spend half an hour just to get four characters into a scene.

    Honestly, I'd happily roll back to 4.12 if I could. I'm not seeing any benefit from 4.14, and I'm seeing my share of drawbacks.

    I might try my hand at scripting up a solution to this problem, but first I would need to dig into the logic governing the loading of morphs into memory, and I don't know if that portion of the codebase is even exposed to scripting. Maybe we'll find out...

  • my g8 female morph folder contains 3250 items 

  • if you ever backed up your all daz folder .. with 412 in it .. it will work.
    I always drag my old folders to another drive before update them

     

  • hadavar said:

    simplest solution would be for the program to just load a list of morphs and then load the actual morphs when you pick on it to choose... 
    ---
    on the other hand that is an increase from the couple of minutes load g8s ... in 412 
    I will do a check

     

     

    4.14 definitely seemed to make it worse for me, but then, my upgrade to 4.14 was pretty fraught. I know that load times will differ for different people depending on how many morphs they have, but I'd be interested to know if you see any appreciable difference. It's reducing my desire to use the product. I don't want to have to spend half an hour just to get four characters into a scene.

    Honestly, I'd happily roll back to 4.12 if I could. I'm not seeing any benefit from 4.14, and I'm seeing my share of drawbacks.

    I might try my hand at scripting up a solution to this problem, but first I would need to dig into the logic governing the loading of morphs into memory, and I don't know if that portion of the codebase is even exposed to scripting. Maybe we'll find out...

    check my previous replies .. only took me 2 to 2 and half mnutes to load the g8/g1 combo figure.. 2m for 412 and 2m  38sec for 414

     

  • Thanks for checking into it on your own box. I've done a little bit more investigation.

    The title of my post is misleading. If I load a G8F from scratch, it works within half a minute. D'oh! However, if I load a scene that consists only of a single G8F female, posed and clothed, well...

    2020-11-20 19:05:00.732 File loaded in 8 min 26.3 sec.

    I'm seeing that the "Clearing Scene/Deleting Objects" dialog takes a terribly long time to run. Additionally, in the log file, I see hundreds (perhaps thousands) of "Could not find output property for formula: Genesis8Female:/data/DAZ%203D/Genesis%208/Female/Morphs/..yadda yadda" WARNs, followed by several 400 errors. Naturally, I say to myself, "What on earth do you mean, 400s? I never asked you to make a HTTP call" (but that's just me being stubborn and deliberately ignorant.)

    I may try rebuilding the database, even though that's been nightmarish for me ever since I moved my content to a new drive. I may also see if I can track down the reason for the logfile WARN messages, and figure out at exactly which point in the scene setup process the load time balloons from less than a minute to 8 minutes--is it the pose, the clothes, or what? I still don't think 8 minutes is a reasonable length of time to load a scene of a single figure, so I would like to educate myself as to a possible fix, if any.

    Thanks again for your help.

  • RobinsonRobinson Posts: 751

    That's what it does. It still needs to know which morph is connected to which other morphs, though, and it's establishing all those links which takes much of the time.

    It doesn't cache them?

  • Robinson said:

    That's what it does. It still needs to know which morph is connected to which other morphs, though, and it's establishing all those links which takes much of the time.

    It doesn't cache them?

    There is a cache (DSON cache, set in Preferences) but the links still need to be established in memory, as far as I know.

  • NorthOf45NorthOf45 Posts: 5,532

    Seeing as how this process is repeated every single time a figure is loaded, would it not be possible to have a pre-assembled version ready to load when needed? The only time it would need to be re-built is when adding or removing products with morphs, maybe the first time it is loaded after making changes. Each character sets certain parameter values, but all parameters are always available. It seems like a colossal waste of time to have to do this loading and processing every time, even though nothing has really changed.

  • IvyIvy Posts: 7,165
    edited November 2020

    A power loader would be most helpful. like the older generation 4 characters have. that allows you to pick which morphs you want to load.  I wonder why they stop using a power loader?

     it took about aminute for 4.14 to load g8F on my systems . But a powerloader I think would reslove a lot of that load time issue

    Capture.JPG
    742 x 899 - 86K
    Post edited by Ivy on
  • NorthOf45 said:

    Seeing as how this process is repeated every single time a figure is loaded, would it not be possible to have a pre-assembled version ready to load when needed? The only time it would need to be re-built is when adding or removing products with morphs, maybe the first time it is loaded after making changes. Each character sets certain parameter values, but all parameters are always available. It seems like a colossal waste of time to have to do this loading and processing every time, even though nothing has really changed.

    I'm not sure if that would help - the cache may already have a full list of what connects to what, barring new/updated content, but that still has to be turned into data structures in memory rather thana  simple, flat listing (if it was kept as a list then every time a property was changed DS would have to get the list of linked proeprties, fiund the properties, get the list of properties they linked to, find the properties, and so on - I suspect it would take more tiem than building the characters does now, at least cumulatively).

  • ZilvergrafixZilvergrafix Posts: 1,385
    edited November 2020

    I found the solution... my load time was 2.52min, applying my fix got 36 seconds.

    some fellas gonna be angry but It works for me and probably gonna work for you!

     

     

     

    Preview.jpg
    1920 x 1080 - 469K
    Post edited by Zilvergrafix on
  • Seven193Seven193 Posts: 1,103

    There's one way Daz can solve the long load times for everyone at the same time.  Release G9F. :)

    I think they conveniently avoided such issues, because they released a new base every 2 years, so their morphs never got overloaded.  But, now Genesis 8 is getting a beating, because we're going into year 4 without any clear signs of a new base coming.

    Genesis 2: June 2013
    Genesis 3: June 2015
    Genesis 8: June 2017
    Genesis 9: ???

     

  • TBorNotTBorNot Posts: 370
    edited November 2020

    I draw your attention to one interesting feature of the "Fit Control" package, where you can delete unused morphs from clothing.    So, the capability exists in Daz3D to trim off unused morph-fluff (tm), but this is the only place I have seen it used.

     

    Post edited by TBorNot on
  • NorthOf45NorthOf45 Posts: 5,532

    That product only removes morphs that it added itself, not any others. The morphs have to be there before they can be removed, so something similar wouldn't be of any benefit for long load times, since you still have to load all the morphs first, anyway. It might reduce the memory required, but I don't know if that would have as much impact as, say, reducing a couple of textures.

Sign In or Register to comment.