We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hello,
is there a way to increase the build speed of the real view compiler? At work we have a project which uses C++ /SAM9263 CPU which takes about 10 Minutes at the moment. My colleagues tried pre-compiled headers but it still takes very long. Is it possible to start multiple threads like in an Eclipse/GNU compiler environment?
I never really worked with the combination Eclipse/GNU, so I can say literally nothing about it. But what stops you from making a couple of separate make-files (that are mutually exclusive in terms of the files they compile) and running them in separate consoles? the last script will do the linking (this way you get separate processes, not threads). I am not sure what the benefits of this approach actually are, though.
Strange ...
When I've had to use Eclipse/GNU combination, I always ended up swearing and cursing at the *&%$ing slow build speeds.
The last, for a Wavecom project, was painfully slow before I optimized the makefiles - Then it was bearably slow.
No complaints about the MDKARM package though.
What's the benefit of multiple threads? Do you have multiple CPUs? If so, you should consider using make for your build process and look at its -j command line option.
Multiple CPUs, a hyperthreaded CPU or multi-core CPU will allow concurrent execution.
But for compilation, you may want to run more than one compilation at a time even with single-core, non-hyperthreaded single-processor. That depends on how large percentage of the build time that is related to code optimization (CPU-bound) or disk-operations.
I would definitely recommend looking for a make that supports concurrent compilations.
If Makefiles are being used, please do not break the dependency graph! Give make a single Makefile consisting of a full description of your source file structure and it will be able to figure out everything by itself. Don't use recursive Makefiles.
Assuming you are using MDK, I am not sure how long licenses will remain checked out. make -j might(!) not give you the expected speed up, if you only have a small pool. OTOH, the results won't be worse than with a single threaded make. Note that "thread" is used as a general term here and not synonymous with an LWP.
Regards Marcus http://www.doulos.com/