Strategies for reducing the build time of a compiler project

30-May-2025

Possible solutions

The following are several recommended practices to optimize and reduce the build time of the TASKING compiler project:

Utilize a high performance CPU and a large amount of PC RAM

Employ a workstation equipped with a powerful multi-core processor to take full advantage of concurrent processing capabilities. A PC RAM size of 32 GB+ is beneficial.


Leverage local SSD storage

Store all source files, header files, and intermediate build artifacts on a local Solid-State Drive (SSD) to ensure fast read/write access during the build process.


Exclude build-related files from Antivirus Scanning

To minimize interruptions and latency, configure the antivirus software to exclude directories containing build-related files. Additionally, exclude essential build executables, such as C/C++ compiler, assembler, and linker executables, from real-time scanning.


Enable parallel builds

When using a multi-core system, configure the build process to run in parallel. This allows individual cores to compile separate source files simultaneously.

For example, with the TASKING make tool (amk.exe), you can use the -j<number of cores> option to specify the number of parallel jobs.
Note that if a build server license is in use, ensure the number of parallel processes does not exceed the licensed limit.


Avoid generating unnecessary files

Limit the generation of files to those required for the current build objective. For instance, assembler-generated listing files are typically only necessary during verification builds and can be omitted for test or debug builds.


Restrict map file output to essential formats

The linker can produce both text and XML versions of the map file. If only one format is needed (for example, for verification purposes), the generation of the other should be disabled. Additionally, review the required content within the map file, as it can be configured to include only the necessary information. A map file of a large project may have a significant size of 100 MB+.


Refer to the official documentation

For further details, see the chapter Influencing the Build Time in the TASKING product user guide. 

Was this answer helpful?