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
いろんなところでScala Compile
Search
machu
April 26, 2016
Technology
1
1.9k
いろんなところでScala Compile
市ヶ谷Geek☆Night「Scala大名の平成維新〜殿中でScala!〜」のLTで発表予定の資料です。
machu
April 26, 2016
Tweet
Share
More Decks by machu
See All by machu
NBAチームから学ぶ強いチームの作り方
machuz
0
45
Authorization to implement with Extensible Effect
machuz
0
420
アルプの 認証/認可分離戦略と手法
machuz
3
750
AuthzCtx - Alp社内共有会
machuz
0
74
アルプのEff独自エフェクト集 / Alp-original ’Eff’ pearls
machuz
1
2.1k
Scalebaseバックエンド構成について/the backend design of Scalebase
machuz
0
6.4k
SQL Meisterへの道 ~更新編~ / sql-meister-CUD
machuz
0
2.2k
SQL Meisterへの道 ~基礎〜参照編~ / sql-meister-R
machuz
0
2.6k
Authz
machuz
0
310
Other Decks in Technology
See All in Technology
AI エンジニアの立場からみた、AI コーディング時代の開発の品質向上の取り組みと妄想
soh9834
8
620
AI時代の経営、Bet AI Vision #BetAIDay
layerx
PRO
0
400
ecspressoの設計思想に至る道 / sekkeinight2025
fujiwara3
12
2.2k
増え続ける脆弱性に立ち向かう: 事前対策と優先度づけによる 持続可能な脆弱性管理 / Confronting the Rise of Vulnerabilities: Sustainable Management Through Proactive Measures and Prioritization
nttcom
1
230
クマ×共生 HACKATHON - 熊対策を『特別な行動」から「生活の一部」に -
pharaohkj
0
260
From Live Coding to Vibe Coding with Firebase Studio
firebasethailand
1
340
Bet "Bet AI" - Accelerating Our AI Journey #BetAIDay
layerx
PRO
1
450
人と生成AIの協調意思決定/Co‑decision making by people and generative AI
moriyuya
0
230
生成AI時代におけるAI・機械学習技術を用いたプロダクト開発の深化と進化 #BetAIDay
layerx
PRO
0
310
反脆弱性(アンチフラジャイル)とデータ基盤構築
cuebic9bic
2
120
AI によるドキュメント処理を加速するためのOCR 結果の永続化と再利用戦略
tomoaki25
0
240
TypeScript 上達の道
ysknsid25
23
5k
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Code Review Best Practice
trishagee
69
19k
Scaling GitHub
holman
461
140k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Gamification - CAS2011
davidbonilla
81
5.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
530
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Transcript
いろんなところで Scala Compile #7 ࢢϲ୩Geek˒Night ʮScalaେ໊ͷฏҡ৽ʙ఼தͰScalaʂʙʯ 20164݄26
ABOUT ME 2016年3月に株式会社リクルートマーケティングパートナーズに入社 『スタディサプリ English』『スタディサプリ 英単語』の サーバーサイド、インフラ周りの人。 ▶ 松川 翼
(まつかわ つばさ) @wing_007
Scalaのデメリット
Compile遅い。
解決策は…
None
CPUで どのくらい違うのか
AWS,GCP,Macで Compileしてみる
GCPは気になっていた プリエンティブルVM 使ってみる
プリエンティブルVMとは Google Cloud Platformで提供されている、 AWSでいうスポットインスタンスのようなもの。 GCP側の都合 or UpTime24時間で自動で落ちるが、 安い(7割減)。 参考:
https://cloudplatform.googleblog.com/2015/05/Introducing-Preemptible-VMs-a-new- class-of-compute-available-at-70-off-standard-pricing.html ※以下PVM
コスト ▶ vCPU 32個 + メモリ28.8GB + SSD10GB (asia-east1-a) ▶
PVM無 $0.943/1h $688.48/1Month ▶ PVM有 $0.354/1h $258.66/1Month ※2016/04/26時点 ※1 か月あたり 730 時間
AWSと比較 ▶ PVM無に近い c4.4xlarge (CPUx16,MEM30G) $1.061/1h $774.53/1Month ▶ PVM有に近い m4.xlarge
(CPUx4,MEM16G) $0.348/1h $254.04/1Month ※2016/04/26時点 ※1 か月あたり 730 時間
条件 ▶ プロジェクト ▶ https://github.com/apache/spark ▶ ファイル数2946 コード行数95万 (ざっくり) ▶
これをclean compileしてみる ▶ resolveが遅い問題があるので計測するのは2回目 ▶ 環境 ▶ GCP:CentOS7 AWS:Amazon Linux ▶ Scala2.11.7 ▶ SBT13.9 ▶ JDK8
結果 (Mac) ▶ MBPR 13inch (デュアルコア MEM:16GB DISK:SSD) 470sec前後 ▶
MBPR 15inch (クアッドコア MEM:16GB DISK:SSD) 250sec前後
結果 (GCP) ▶ PVM (vCPU:24 + MEM:28.8GB + DISK:SSD) 250sec前後
▶ PVM (vCPU:32 + MEM:28.8GB + DISK:SSD) 210sec前後
結果 (AWS) ▶ aws c4.xlarge (vCPU:4 MEM:7.5G DISK:EBS) 230sec前後 ▶
aws c4.2xlarge (vCPU:8 MEM:15G DISK:EBS) 170sec前後 ▶ aws c4.4xlarge (vCPU:16 MEM:30G DISK:EBS) 155sec前後 ▶ aws i2.4xlarge (vCPU:8 MEM:15G DISK:EBS) 230sec前後
AWSのc4はやい。
c4が優秀な理由
計算特化なのでCPU強い ▶ AWS c4.xxxx bogomips : 5800.10 xN ▶ AWS
i2.xxx bogomips : 4988.18 xN ▶ GCP PVM bogomips : 4999.99 x32 ࢀর: https://ja.wikipedia.org/wiki/BogoMips
CPU負荷が かたよる瞬間多め GCP C4
CPU数の優位を 活かせていない
現状では Scala Compileには AWS c4インスタンス◎
PVMは安くで CPU数確保したいなら◎ コンソールも すごく使いやすくなってた
Dotty を心待ちに。
ご清聴 ありがとうございました。