How can I calculate compile time?

Hi

Actually, We’re facing performance problems while compiling our projects using Water (Last Stable Version).

During the build, the combination IDE + EBuild can reach until 3.4Gb of Ram Memory.

Do you have a good way to calculate the compilation time? Is there a feature for this?
Is there minimun requirement recomended to use the IDE Water?

Thanks.

If you set the build log level to “Diagnostic” in Preferences, yu will see detailed times for each phase of the build, and a statistic at the end, as well, e.g.:

               <- Task CodeSign finished for Fire, Toffee-macOS, took 0.3934s (0.393s).

and:

     net time    gross time   task
-------------  ------------   -------------------------------
       0.000s        0.002s   ElementsPreCompileToffee (2x)
       0.000s        0.395s   ElementsPreCompile (2x)
       0.000s        0.000s   ElementsPostCompileDarwin (2x)
       0.000s        0.000s   ElementsPostCompileToffee (2x)
       0.000s        0.000s   ElementsPostCompile (2x)
       0.000s        0.001s   ElementsPreCompile2 (2x)
       0.000s        9.959s   ElementsBuildProject (2x)
       0.000s        0.000s   ElementsDarwinGatherXcodeDetails (2x)
       0.000s        0.001s   ElementsPreCompileDarwin (2x)
       0.000s        0.000s   ElementsSanityCheck (2x)
       0.000s        0.000s   ElementsCheckForTargetlessReferences (2x)
       0.001s        0.001s   ElementsValidateCachedToffeeReferencesForTarget (2x)
       0.001s        0.001s   ElementsApplyLegacySettings (2x)
       0.001s        0.001s   ElementsDarwinLocateProvisioningProfile 
       0.001s        0.002s   ElementsPreflightToffee (2x)
       0.002s        0.002s   ElementsPreflightIsland (2x)
       0.003s        0.003s   ElementsResolveSourceFiles (2x)
       0.005s        0.011s   ElementsExpandCopyToOutputDirectoryPaths (2x)
       0.011s        0.011s   ElementsDarwinResolveStoryboardAndXibFiles 
       0.013s        0.014s   ElementsResolveReferences (2x)
       0.017s        0.017s   ElementsDarwinResolveResourceFiles 
       0.021s        1.246s   ElementsDetermineFinalOutputToffee (2x)
       0.102s        0.114s   ElementsDarwinProcessStoryboards 
       0.245s        0.245s   ElementsDarwinMerge (2x)
       0.379s        0.383s   ElementsPrepareToffeePlatform (2x)
       0.388s        0.389s   ElementsPreparePlatforms (2x)
       0.396s        0.396s   ElementsDarwinCodeSign (2x)
       0.444s        0.578s   ElementsDarwinCreateAppBundle 
       0.804s        9.958s   ElementsCopyFinalOutput (2x)
       1.246s        9.142s   ElementsDetermineFinalOutput (2x)
       1.970s        1.970s   ElementsToffeeLink 
       1.971s        7.895s   ElementsLink (2x)
       5.509s        5.924s   ElementsCompile (2x)
      10.030s       10.030s   BuildSolution 

Hi

I didn`t find this preferences. We’re in Windows Environment. I don’t know how to find Mac Preferences on Windows.

Thanks.

It’s in the lain menu under under “Tools | Options”, third tab, first option at the top.

Hi

I got it.

Thanks.

1 Like

Cool. Let me know what you find, and whether you think something is taking more time than it should…

Hi

My experience is that Water spend so much memory while building, and some machines are limited to 4Gb of Ram Memory

Thanks

Hmm. if EBuild also takes 1,8GB, thats probably “legit”, and just means the compiler need that much space too hols all references and the code model in memory. How large is tis project? Could we see it (via PM is fine)?

thanx,
marc

Hi

Not much large, near to 480Mb, grouped in ~340 classes.

We used to compile using Visual Studio 2015, but for the new Elements release is not compatible anymore.

Thanks.

We do still integrate with 2015, as far as I recall. That said, the IDE should not make a difference for the compile…

Hi,

While using visual studio 2015 we can’t visualize variable contents, hard to debug.

At.

Ah. is that a VS bug or ours? Does VS2019 have the same issue (if so, we should fix it; if not, TBH, we probably wont bother, as we will phase out VS2015 fully, soon)…

Hi,

I’m not sure, but VS2019 it works fine.

But, how most of the employees use VS2015, they had to change to Water.

Thanks.

Curious. so VS2015 is broken, Water uses to much memory to build the project, but VS2019 is fine and does not use too much memory?

Hi

Yes, VS2015 had broken, ever checking Legacy Code and other options in Environment Options, it doens`t show anymore.

Water uses around 1,7Gb ~ 2,5Gb without building. When a new process is created for Ebuild, the build memory raises to 3,5GB ~ 4Gb (Water + Ebuild). I don’t know if exists memory leak (for example)

On VS2019 it keeps around 700 and 800Mb, but Ebuild still cost around 1,8Gb ~ 2Gb (average)

Most of the environment has only 4Gb for Phisical Memory. So they experience Freezes or Stuttering.

Thanks

Any chance I could see tis project?

Yeah, id expect that to be the same between Water and VS, as EBuild runs (mostly) the same, no matter where you build from.

What we;'ll need to see is (a) whether the 1,8Gb ~ 2Gb use for the build are normal (ie the project just is that big, so it takes that amount to hold it all in) or a bug; as well as why Water needs that much melty for the code model (I assume), when VS does to — as these two essentially use the same code, under the hood, for this.

VS2015: cannot load a Silverlight application - Elements / Elements Beta - RemObjects Talk

I only use VS2015 for Silverlight, but I currently had to reinstall Elements .2554 when I need to work on it…

Because latest no longer installs into 2015, or because it does but has problems?

Because it has problems: it doesn’t load a Silverlight project, as stated in the other thread.

1 Like

Hi,

What exaclty would you like to know about the project?

Thanks.