写真●Electric Accelerator 7.0の画面
写真●Electric Accelerator 7.0の画面
[画像のクリックで拡大表示]

 Electric Cloud Japanは2013年3月4日、複数台のコンピュータを並列で動作させる分散処理によってソフトウエアのビルド(コンパイル/リンク)処理を高速化するツールの新版「Electric Accelerator 7.0」(写真)を発表した。3月末に出荷する。新版では、ソースの依存関係を解析する機能を高め、より短時間でビルドできるようにした。

 Electric Accelerator(関連記事)は、既存のビルドツール(Makeなど)を置き換えて使う、分散ビルドツールである。ビルドを実行する複数のコンピュータ上に専用のエージェントを導入し、これを管理ソフトから集中管理する仕組み。ソースの依存関係などを記した設定ファイル(Makefileなど)は、内容を書き換えることなく、既存のものをそのまま利用できる。稼働環境は、Windows、Linux、Solaris。

 ビルド処理の指示を受けたエージェント側では、ビルドに必要なファイル(ソースやライブラリ、ビルド済みの成果物など)を、管理ソフトから逐次取得する。データキャッシュも備えており、キャッシュ上に最新のファイルがある場合は、これを使ってビルドする。ビルド作業によるファイルの更新情報などは、管理ソフト側で一元管理する。

依存関係の自動解析を強化、より短時間でビルド可能に

 今回の新版(7.0)では、ソースの依存関係を解析する機能を強化した。これまでもElectric Acceleratorは、Makefileに書かれた依存関係を参考にしつつも、独自にソース同士の依存関係を解析する機能を持っていたが、今回、より高度に解析できるようにした。これにより、分散処理の効率が高まったほか、差分ビルドの信頼性が高まった。

 1つめの分散処理の効率化では、依存関係がないと判定した複数のビルド処理を同時に実行することによって、ほかのノードが成果物を出すまで何もせずに待っている処理待ち時間を減らした。Makefileの上では依存関係が記されていても、実際には先行してビルドしても問題ないケースがあるので、これを調査することによって、より効率よく処理を分散できるようにした。

 2つめの差分ビルドの信頼性向上では、依存関係を正確に解析できるようになったことで、全てのソースを最初から全てコンパイルする作業を不要にした。たとえ元のMakefileの記述に不備があったとしても、依存関係の解析によってこれを修正してしまうことができるので、ソースの変更時に、その変更の影響が及ぶ成果物だけを的確にビルドできるようになったという。

 Electric Acceleratorの価格(税込み)はオープンだが、分散処理を実行するエージェントが1台当たり36万7500円、エージェントを集中管理する管理ソフトが315万円。開発会社は米Electric Cloudで、日本法人はElectric Cloud Japan。国内の1次販売代理店は2社で、エーアイコーポレーションと日立ソリューションズ。