Ticket #3460: t3460_preview_wip_v0.1.patch

File t3460_preview_wip_v0.1.patch, 1.4 KB (added by elexis, 9 years ago)

Something like that. It has helped me a lot with #3271. Finishes the run in some seconds instead of hours.

  • source/simulation2/Simulation2.cpp

     
    339339    const bool serializationTestHash = true; // set true to save and compare hash of state
    340340
    341341    SerializationTestState primaryStateBefore;
    342342    ScriptInterface& scriptInterface = m_ComponentManager.GetScriptInterface();
    343343
    344     if (m_EnableSerializationTest)
     344    bool doTest = (m_TurnNumber >= 2907) && m_EnableSerializationTest;
     345
     346    if (doTest)
    345347    {
    346348        ENSURE(m_ComponentManager.SerializeState(primaryStateBefore.state));
    347349        if (serializationTestDebugDump)
    348350            ENSURE(m_ComponentManager.DumpDebugState(primaryStateBefore.debug, false));
    349351        if (serializationTestHash)
     
    351353    }
    352354
    353355    UpdateComponents(m_SimContext, turnLengthFixed, commands);
    354356
    355357
    356     if (m_EnableSerializationTest)
     358    if (doTest)
    357359    {
    358360        // Initialise the secondary simulation
    359361        CTerrain secondaryTerrain;
    360362        CSimContext secondaryContext;
    361363        secondaryContext.m_Terrain = &secondaryTerrain;
     
    454456    if (m_TurnNumber % 500 == 0)
    455457        scriptInterface.GetRuntime()->ShrinkingGC();
    456458    else
    457459        scriptInterface.GetRuntime()->MaybeIncrementalGC(0.0f);
    458460
    459     if (m_EnableOOSLog)
     461    if (m_EnableOOSLog && m_TurnNumber >= 2907)
    460462        DumpState();
    461463
    462464    // Start computing AI for the next turn
    463465    CmpPtr<ICmpAIManager> cmpAIManager(m_SimContext, SYSTEM_ENTITY);
    464466    if (cmpAIManager)