This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: reduce compilation times?
- From: "J.C. Pizarro" <jcpiza at gmail dot com>
- To: "Sven Eschenberg" <eschenb at cs dot uni-frankfurt dot de>, gcc-help at gcc dot gnu dot org
- Date: Tue, 27 Nov 2007 16:48:33 +0100
- Subject: Re: reduce compilation times?
On 2007/11/27, Sven Eschenberg <eschenb@cs.uni-frankfurt.de> wrote:
> Aside from using -j on HT/Mulitcore/Multi-CPU Systems and ccache it might help to put
> the sourcecode into a ramdisk for compilation (no ccache needd then), or at least
> the build directory, for all the temporary stuff.
>
> -Sven
Here the list of how to try to reduce the compilation times:
* to put more RAM of higher frequencies and lower latencies
* to put more machines with more cores per chip (quadcore?),
bigger caches (8 MiB L2?) and higher frequencies
* to link /tmp to /ramdisk/tmp (mount -t tmpfs)
* to configure the kernel for SMP workloads
* distcc
* make -j N
* ccache
* to recompile optimized gcc, binutils, ELF loader ld, ...
* to use strip --strip-all
* to use -O3 -fomit-frame-pointer -funroll-loops -finline-functions -fpeel-loops
* to use SSE2/SSE/AltiVec (SSE3 is little bit slower)
* to disable shared (it reduces linking time and paging time), to
enable -static.
* to recompile the shared libraries (that it depends) to static libraries.
* to disable threads (they reduce I/O bandwith) if the program
doesn't require threading
* to disable checking (-DNDEBUG)
* to modify optimizing their sources after profiled the runned
testsuite (-pg, gprof)
Sincerely, J.C.Pizarro