Talk type: Talk
nocc, a Distributed C++ Compiler: Like distcc, but Faster
It is generally known that C++ projects suffer from huge compilation times. ccache is able to save some time locally but in modern world companies use TeamCity and multiple build agents for deployment, and ccache can do nothing about it. Besides ccache, there is distcc — a distributed compiler, which speeds up by using multiple compilation nodes. For quick projects it's really faster than locally. At VK.com they used distcc for years, but finally our codebase became so huge that even distcc became slow. We invented nocc — like distcc, but faster, and it significally decreased our build time. I'll tell you about its architecture, implementation corner cases, differences from distcc — and of course, how to use nocc in your projects.