Page 1 of 1
Parallel compilation in jtmake
Posted: Mon Jul 20, 2026 1:57 am
by tzvif
I'm trying to improve our CI build performance. Our application consists of around 1,000 projects, and the build machine has a 16-core CPU. I'm trying to find a way to fully utilize it to speed up the build.
I noticed that jtmake supports the -parallel option when building a project group, but testing it on a project group containing about 200 projects doesn't seem to have any noticeable impact. While monitoring the build in Task Manager, I observed that only one project was being compiled at a time.
Many of our projects are very small (2–5 source files), while others are larger (30+ source files).
I also found forum posts stating that running multiple jtmake instances in parallel for different projects is not supported.
So I would like to know:
- What exactly does the `-parallel` option do?
- Is there a recommended way to utilize all 16 cores when building an application consisting of hundreds of relatively small projects?
Thanks!
Re: Parallel compilation in jtmake
Posted: Mon Jul 20, 2026 6:48 pm
by jomitech
The -parallel option does exactly what you are expecting it to do - it will compile multiple projects at the same time, allowing small projects to use all cores. This is what this option is for.
The caveat is that it's only supported on C++Builder 11.0 (or newer) project groups. If you're compiling projects using an older IDE version, parallel project builds are unfortunately not supported.
If you are using 11.0 or newer, it should work correctly. If this is the case, can you send the output of the jtmake command when you add -parallel to
support@jomitech.com?
Re: Parallel compilation in jtmake
Posted: Wed Sep 02, 2026 12:15 am
by tzvif
Hi,
You were right — the issue was that the thread count was set to 4 in the IDE, which made me think the
-parallel option wasn't working. After resetting it to
Automatic, I'm getting much faster builds. Thanks!
However, I've encountered another issue with parallel builds.
I'm building large project groups (100–200 projects), and when an error occurs, it's sometimes very difficult to determine which project it came from. It could be a compilation error that references an external file, or a linker error, and in these cases the output doesn't clearly indicate which project triggered the error.
For example:
Code: Select all
C:\Program Files (x86)\JomiTech\TwineCompile\TCTargets130.Targets(792,5): error : Fatal: Unable to open file 'SOME.OBJ'
With parallel builds, I don't see which project this error belongs to.
Is there a way to make the output of parallel builds clearer, for example by including the project name (or some other identifier) with each error?
Thank you!
Re: Parallel compilation in jtmake
Posted: Wed Sep 02, 2026 4:44 pm
by jomitech
This particular error should have had a project line above it, as this would have been part of the linker step, which runs for each project separately. Can you provide the whole output? (Send as a text file to
support@jomitech.com).
For C++ errors, I can see the parallel projects making it difficult to track the actual project where the C++ error comes from, we can probably enhance that somehow.
Re: Parallel compilation in jtmake
Posted: Sun Sep 06, 2026 2:20 am
by tzvif
Indeed, for the ilink errors I can find the failing project quite easily, the bigger issue is with compile-time errors - especially when it points to a header file which isn't part of the failing project.
Is there a way to make the output more organized ?
Thank you