Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ビルド待ちがぐっと短くなる!ビルド高速化サービス IncrediBuildのご紹介
Search
クラスメソッド 出村成和
August 25, 2022
Programming
0
2.4k
ビルド待ちがぐっと短くなる!ビルド高速化サービス IncrediBuildのご紹介
CEDEC 2022にて発表した内容です
クラスメソッド 出村成和
August 25, 2022
Tweet
Share
More Decks by クラスメソッド 出村成和
See All by クラスメソッド 出村成和
ソーシャルゲームの負荷試験 ご紹介
cmdemura
0
1.4k
AWSとCPUのムフフな関係
cmdemura
0
1.3k
Other Decks in Programming
See All in Programming
CSC305 Lecture 04
javiergs
PRO
0
270
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
170
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
350
Introducing ReActionView: A new ActionView-Compatible ERB Engine @ Kaigi on Rails 2025, Tokyo, Japan
marcoroth
3
1k
CSC305 Lecture 03
javiergs
PRO
0
240
Flutterで分数(Fraction)を表示する方法
koukimiura
0
130
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
180
はじめてのDSPy - 言語モデルを『プロンプト』ではなく『プログラミング』するための仕組み
masahiro_nishimi
2
380
階層構造を表現するデータ構造とリファクタリング 〜1年で10倍成長したプロダクトの変化と課題〜
yuhisatoxxx
3
1k
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
250
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
10
6.7k
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
1
220
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
72
11k
Designing for humans not robots
tammielis
254
26k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
How to train your dragon (web standard)
notwaldorf
96
6.3k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Being A Developer After 40
akosma
91
590k
The Illustrated Children's Guide to Kubernetes
chrisshort
49
51k
Writing Fast Ruby
sferik
629
62k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Documentation Writing (for coders)
carmenintech
75
5.1k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Docker and Python
trallard
46
3.6k
Transcript
ビルド高速化サービス IncrediBuildのご紹介 営業統括本部 ゲームソリューション部 出村 成和 1
2 自己紹介 出村 成和 (DEMURA Narikazu) クラスメソッド株式会社 営業統括本部 ゲームソリューション部所属 ゲーム開発環境の構築、開発支援を担当
過去の経歴(抜粋) • コンソール機向けゲーム開発 • フリーランス • ソーシャルゲーム開発
3 アジェンダ • ビルド高速化サービス IncrediBuildとは • IncrediBuildがサポートする開発環境 • IncrediBuild Cloud
• デモ
4 ゲーム開発中 これらの経験はありませんか?
5 ゲーム開発中にありがちな出来事 帰り間際に仕掛けたビルドが翌朝失敗していた 修正してビルドをやりなおし 予定が後ろ倒しに… ビルド待ちしてたら退社できるのが終電前 ビルド完了後に動作確認してたら終電が目前に…
6 ビルド時間を短くしたい
7
8 ビルド時間が短くなると ゲームのクオリティ向上 浮いた時間をゲームの質向上に充てられる ビルド チェック ビルド 修正 チェック 修正
ビルド チェック ビルド 修正 チェック 修正 改善前 ビルド高速化後 この時間を クオリティUPに 当てられる
9 IncrediBuildの構成
10 IncrediBuildとは ビルド高速化サービス 複数マシンで分散ビルド 開発用PC 分散ビルド環境 ビルド用PC 単独ビルド環境 開発用PC 開発用PC
11 どれだけ早くなるのか
12 どれだけ早くなるのか? 未使用時 Ryzen 9 5900X 使用時 Ryzen 9 5900X
+ c5.4xlarge×5(分散ビルドマシン) 92分 51分 UnrealEngine 5ソースコードをビルド 未使用時 使用時 45%削減
13 導入事例
14 ユークス様の事例 https://classmethod.jp/cases/yukes/
15 サポート環境
16 サポート環境(IDE) Visual Studio
17 サポート環境(コンソール開発環境) PlayStation Xbox Nintendo Switch
18 サポート環境(Toolchain) ビルドシステム • MSBuild • cmake • GNU Make
• Ninja など コンパイラ • MS C++ • Clang • CUDA など
19 サポート環境(UnrealEngine) ・コード ・シェーダーコンパイル アーティストの業務が 効率化できる プログラマの業務が 効率化できる
20 VisualStudioプラグインが存在 VisualStudioのプロジェクトに直ぐに導入可能 • プロジェクト変更の必要なし • IncrediBuildが利用できるか自動で判断 • VisualStudio 2010以降対応
21 IncrediBuildの動き
22 IncrediBuildを構成するソフト&サーバ IncrediBuild Agent Coordinator Helper Agent 開発用PC ビルド指示を出す ビルドの介在役
ビルド実行部隊
23 Incredibuildの動き 1/5 IncrediBuild Agent Coordinator Helper Agent 開発用PC HelperAgentの情報取得
24 IncrediBuildの動き 2/5 IncrediBuild Agent Coordinator Helper Agent 開発用PC Coordinatorから
ビルド依頼に関する情報を 取得する
25 IncrediBuildの動き 3/5 IncrediBuild Agent Coordinator Helper Agent 開発用PC ビルドを依頼する
26 IncrediBuildの動き 4/5 IncrediBuild Agent Coordinator Helper Agent 開発用PC ビルドを実行
27 IncrediBuildの動き 6/5 IncrediBuild Agent Coordinator Helper Agent 開発用PC ビルド結果を取得する
28 多数のPCが必要? PCを設置する場所がないのですが…
29 IncrediBuild Cloud
AWS Cloud 30 IncrediBuild Cloud IncrediBuild Agent 開発用PC ビルド指示を出す ビルドの介在役
ビルド実行部隊 AWS上にビルド環境が構築可能 Coordinator Helper Agent
31 EC2インスタンスの稼働 サーバコストを最小に抑える仕組み • ビルド時のみ、必要なEC2インスタンスが起動 • 一定時間未使用ならば自動的にインスタンス停止
AWS Cloud 32 IncrediBuild Cloud IncrediBuild Agent 開発用PC ビルド指示を出す ビルド処理待ち
Coordinator Helper Agent
AWS Cloud 33 IncrediBuild Cloud IncrediBuild Agent 開発用PC ビルド指示を出す ビルド中
Coordinator Helper Agent
34 ビルド用マシンのEC2インスタンス スポットインスタンスも利用可能 • 2種類のEC2インスタンスが利用可能 利用タイミング 料金について オンデマンド インスタンス •
常時利用可能 • EC2停止中でも料金が発生 スポット インスタンス • 必要な時のみインスタンスを 確保して利用 • オンデマンドインスタンスより安価 • 利用不可の場合もありえる
35 IncrediBuildの利用形態
36 利用形態は選択可能 • オンプレミス • ハイブリッドクラウド • フルクラウド
Office 37 オンプレミス IncrediBuild Agent Coordinator Helper Agent 開発用PC ビルドの介在役
ビルド指示を出す すべてのPCが同一ネットワーク上にある ビルド実行部隊 IncrediBuild Agent
Office 38 ハイブリッドクラウド Coordinator ビルド実行部隊 HelperAgentのみがEC2インスタンスで構築 AWS Cloud Helper Agent
ビルド指示を出す ビルドの介在役 IncrediBuild Agent 開発用PC IncrediBuild Agent
AWS Cloud 39 フルクラウド IncrediBuild Agent Coordinator 開発用PC ビルド実行部隊 Coordinator、HelperAgentがEC2インスタンスで構築
Office or Home ビルドの介在役 Helper Agent ビルド指示を出す IncrediBuild Agent
AWS Cloud 40 フルクラウド IncrediBuild Agent Coordinator 開発用PC ビルド実行部隊 Coordinator、HelperAgentがEC2インスタンスで構築
Office or Home ビルドの介在役 Helper Agent ビルド指示を出す IncrediBuild Agent ボトルネック になりがち
41 フルクラウド Coordinator リモート デスクトップPC すべてEC2インスタンスを利用してボトルネック回避 Office or Home ビルドの介在役
AWS Cloud Helper Agent ビルド指示を出す IncrediBuild Agent 開発用PC ビルド実行部隊
42 デモ
43 まとめ
44 まとめ ビルド時間を短縮することが可能 浮いた時間をゲームの質向上へ当てる 幅広い開発環境をサポート プログラマ、アーティストが恩恵を受けられる クラウドを利用した環境構築が可能 さまざまな運用形態が可能
45 AWS様のセッション紹介 AWSの知識ゼロでバックエンド機能を構築する AWS GameKit 8月24日(水) 16:40 ~ 17:10 他2セッション
46