Xcode
Build
Swift

Xcodeでのビルド時間の表示と短縮

ビルド時間の表示

Xcodeでビルド時間を表示するには、Terminalで以下のコマンドを入力し、Xcodeを再起動します。

$ defaults write com.apple.dt.Xcode ShowBuildOperationDuration YES

上記のコマンドを実行すると、Xcode上でビルド時間が表示されるようになります。試すにはProductからCleanした後にArchive実行することで、正しい時間が測定できます。

ビルド時の複数タスクへの分割

Xcodeはデフォルトでは1コアしか利用せず、ビルド作業を行います(というより、ビルド単位をわけずにビルドをしているため)。そのため、ビルド単位を小さいタスクで分割させることで、複数コアで同時にビルド作業を行うことができます(実世界と同じで一つの作業があったときに手分けしてやるのと同じようなイメージ)。ただし、CPUの持っているコア以上にタスクを分割しても、効果が薄いため注意が必要です(実世界でも頭数が二人しかいないので、10個のタスクに分けて、作業者の数が増えない限り、特に効率的になるわけではないですよね。)。

以下がタスク数を変更する命令です。

$ defaults write com.apple.dt.Xcode IDEBuildOperationMaxNumberOfConcurrentCompileTasks 2

サンプル実行結果

手元のプロジェクトで試した結果次のような効果を得ました。

1コア時:264.992s
2コア時:220.232s