テクノロジーの進化は目覚ましく、C++もまた「言語への追加」「標準ライブラリへの追加」という2つの開発を軸に進化し続けている。std::any、std::common_typeなどライブラリ部品も充実してきた。一方で、ソフトウェア開発者が“遅い”C++ビルドに悩まされていることも事実だ。
コードのコンパイル、テストの実行、コード解析、アセットの作成、シミュレーション、継続的デリバリーや構築などの処理では、メモリやCPUという「ガラスの天井」があり、どうしてもコンパイル時間を短縮するには限界があった。新たな方法が探される中、浮上してきたのが分散処理技術の活用だ。
本資料で紹介されるツールでは、分散コンパイル技術の活用により、90%ものコンパイル時間の短縮を実現しているという。独自の仮想化技術によってシームレスにプロセスを分散するので、ホストマシンへのインストール以外、リモートマシン側での作業は不要だ。本資料では、他にもC++のライブラリ部品の一部を取り上げ、それらをどのように実装すればよいのかを説明する。