4 ms·
Doesn't sound too fast, that's about how long it takes for FreeBSD kernel to be compiled[1] and I would imagine a kernel is more complex. The whole system takes
by takeda 9y ago
Doesn't sound too fast, that's about how long it takes for FreeBSD kernel to be compiled[1] and I would imagine a kernel is more complex.
The whole system takes about 50 minutes[2]
[1] https://ci.freebsd.org/job/FreeBSD-head-amd64-LINT/buildTimeTrend https://ci.freebsd.org/job/FreeBSD-head-amd64-LINT/buildTime...
[2] https://ci.freebsd.org/job/FreeBSD-head-amd64-build/buildTimeTrend https://ci.freebsd.org/job/FreeBSD-head-amd64-build/buildTim...
- cdoxsey 9y agoGo's main compilation performance gains come from incremental compilation. Since C++ doesn't have real module support merely parsing the entire dependency graph from headers can take a very long time. In go if you have .a pkgs for all your dependencies your program will compile very fast. If you use docker as part of your ci build the dependencies as a separate step so they can be cached between builds. This is especially important for libraries like sqlite, which can take a lot longer to compile.