few issues on TC 5.3

TwineCompile - Cut C++Builder compile times by up to 50x!
Post Reply
Richard_008
Posts: 25
Joined: Mon Sep 21, 2020 11:53 am

few issues on TC 5.3

Post by Richard_008 » Fri Oct 08, 2021 4:01 am

I have a few issues on TC 5.3:

First, when using JTMake, the configuration given is not the configuration that is being build. The configuration saved in the *.cbproj is the one that ends up being build, despite the fact that in the logging the right build configuration is stated.

Second, Why does the compile starts with just 1 file? TC now pics the slowest files first (by design), but since it starts with only one file, it still takes a quite long time before it actually uses the full potential of the processors available (especially in release build). I see this behaviour both with JTMake and in the IDE (PCH is turned off). If this single file start is actually needed, the first file compiled should then be the fastest file available and in need of compilation, followed by all the slowest files.

Finally, some suggestions: I'd like to set the priority when using JTMake (during compiling, my mouse sometimes hangs, which is irritating, setting the priority to below normal fixes this), as one can do in the IDE and in the mtbcc32 with the -priority flag. The -prog- flag could also come in handy here if possible.

jomitech
Site Admin
Posts: 2077
Joined: Wed Oct 08, 2008 12:23 am

Re: few issues on TC 5.3

Post by jomitech » Fri Oct 08, 2021 7:35 am

Richard_008 wrote:
Fri Oct 08, 2021 4:01 am
First, when using JTMake, the configuration given is not the configuration that is being build. The configuration saved in the *.cbproj is the one that ends up being build, despite the fact that in the logging the right build configuration is stated.
Can you share the command-line you're using to start jtmake?
Richard_008 wrote:
Fri Oct 08, 2021 4:01 am
Second, Why does the compile starts with just 1 file? TC now pics the slowest files first (by design), but since it starts with only one file, it still takes a quite long time before it actually uses the full potential of the processors available (especially in release build). I see this behaviour both with JTMake and in the IDE (PCH is turned off). If this single file start is actually needed, the first file compiled should then be the fastest file available and in need of compilation, followed by all the slowest files.
Are you using CLANG or the Classic compiler? The single-file behaviour is only necessary when PCH is involved, so if you're not using PCH, there will be some configuration in your project that makes TwineCompile think PCH is still being used.
Richard_008 wrote:
Fri Oct 08, 2021 4:01 am
Finally, some suggestions: I'd like to set the priority when using JTMake (during compiling, my mouse sometimes hangs, which is irritating, setting the priority to below normal fixes this), as one can do in the IDE and in the mtbcc32 with the -priority flag. The -prog- flag could also come in handy here if possible.
This is a good suggestion, thanks for mentioning it.
Jon

Richard_008
Posts: 25
Joined: Mon Sep 21, 2020 11:53 am

Re: few issues on TC 5.3

Post by Richard_008 » Fri Oct 08, 2021 9:43 am

jomitech wrote:
Fri Oct 08, 2021 7:35 am
Richard_008 wrote:
Fri Oct 08, 2021 4:01 am
First, when using JTMake, the configuration given is not the configuration that is being build. The configuration saved in the *.cbproj is the one that ends up being build, despite the fact that in the logging the right build configuration is stated.
Can you share the command-line you're using to start jtmake?
The commandline I am using is:

Code: Select all

"C:\Program Files (x86)\JomiTech\TwineCompile\jtmake.exe" -c"Release Build" -ide110 -pl"Win32" -threads14 "C:\[project_path]\[groupproject_file].groupproj"
jomitech wrote:
Fri Oct 08, 2021 7:35 am
Richard_008 wrote:
Fri Oct 08, 2021 4:01 am
Second, Why does the compile starts with just 1 file? TC now pics the slowest files first (by design), but since it starts with only one file, it still takes a quite long time before it actually uses the full potential of the processors available (especially in release build). I see this behaviour both with JTMake and in the IDE (PCH is turned off). If this single file start is actually needed, the first file compiled should then be the fastest file available and in need of compilation, followed by all the slowest files.
Are you using CLANG or the Classic compiler? The single-file behaviour is only necessary when PCH is involved, so if you're not using PCH, there will be some configuration in your project that makes TwineCompile think PCH is still being used.
I am using the Classic compiler. The only thing about PCH that I can find in the *.cbproj file is BCC_PCHUsage>None</BCC_PCHUsage> in <PropertyGroup Condition="'$(Base)'!=''">. In my opinion, this would mean PCH is off. In the IDE, the "Use PCH file for each thread" is turned off.

jomitech
Site Admin
Posts: 2077
Joined: Wed Oct 08, 2008 12:23 am

Re: few issues on TC 5.3

Post by jomitech » Sat Oct 09, 2021 10:48 am

I've attached a fix for that configuration issue - it was specific to compiling a project group and not passing the configuration selected into the project build. Extract into the TwineCompile Program Files directory.

For the single-file issue, since you're not using PCH, turn on that switch to use a separate PCH file for each thread (it won't actually use PCH because it's turned off in the project). That switch will disable the TwineCompile feature to process the single file first as it will force it to treat all files as equal.
Attachments
TCGroupTargets110.zip
(1.09 KiB) Downloaded 30 times
Jon

Richard_008
Posts: 25
Joined: Mon Sep 21, 2020 11:53 am

Re: few issues on TC 5.3

Post by Richard_008 » Mon Oct 11, 2021 2:51 am

Thanks for the fix!

As for the single file compile, Your suggestion works for when I use the IDE, but on the command line still one file is processed first (probably because there is no option to disable PCH (like the -usepch- and -afiles flags that exist for mtbcc32) or set the option to use a separate PCH file for each thread (like there is in the IDE). Do you have a suggestion here?

jomitech
Site Admin
Posts: 2077
Joined: Wed Oct 08, 2008 12:23 am

Re: few issues on TC 5.3

Post by jomitech » Thu Oct 14, 2021 5:57 pm

Sorry for the delay in responding. We'll have to look into this as another enhancement - jtmake should be using the options saved from the IDE, but it isn't working right now for project groups.
Jon

Richard_008
Posts: 25
Joined: Mon Sep 21, 2020 11:53 am

Re: few issues on TC 5.3

Post by Richard_008 » Fri Oct 15, 2021 4:08 am

Ah, oke. For now, I'll just accept the extra time for this first file and I'll eagerly await the improvements/enhancements to come in the future.

Post Reply