Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ビルド待ちがぐっと短くなる!ビルド高速化サービス IncrediBuildのご紹介
Search
クラスメソッド 出村成和
August 25, 2022
Programming
2.7k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ビルド待ちがぐっと短くなる!ビルド高速化サービス IncrediBuildのご紹介
CEDEC 2022にて発表した内容です
クラスメソッド 出村成和
August 25, 2022
More Decks by クラスメソッド 出村成和
See All by クラスメソッド 出村成和
ソーシャルゲームの負荷試験 ご紹介
cmdemura
0
1.6k
AWSとCPUのムフフな関係
cmdemura
0
1.5k
Other Decks in Programming
See All in Programming
GitHubハンズオン講座 — 実務レベルのチーム開発のフローを身につけよう
junhat6
0
120
Kubernetes祭り #2 OP/ED
bells17
0
100
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
2.9k
setup-vp GitLab対応の裏側
naokihaba
0
150
速習iPhone Duo対応
yuukiw00w
2
960
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
390
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
140
プロダクトコードからライブラリの境界を見つける
elmetal
PRO
0
110
スマートフォンでモールス信号を送受信する 〜スマートフォンのLEDとカメラで作る光通信の設計と実装〜
atsuki_seo
0
230
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
770
速く作れる。その次は、速く確かめられる開発へ 〜AIネイティブ開発を支える、Shift Down〜 / Can build fast. Next, moving to development where we can verify fast.
rkaga
8
5.5k
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
450
Featured
See All Featured
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
450
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
600
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
920
Evolving SEO for Evolving Search Engines
ryanjones
0
310
Scaling GitHub
holman
464
140k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
The Curious Case for Waylosing
cassininazir
1
560
Abbi's Birthday
coloredviolet
4
10k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Testing 201, or: Great Expectations
jmmastey
46
8.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1k
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