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
47
Authorization to implement with Extensible Effect
machuz
0
420
アルプの 認証/認可分離戦略と手法
machuz
3
750
AuthzCtx - Alp社内共有会
machuz
0
77
アルプのEff独自エフェクト集 / Alp-original ’Eff’ pearls
machuz
1
2.2k
Scalebaseバックエンド構成について/the backend design of Scalebase
machuz
0
6.5k
SQL Meisterへの道 ~更新編~ / sql-meister-CUD
machuz
0
2.3k
SQL Meisterへの道 ~基礎〜参照編~ / sql-meister-R
machuz
0
2.6k
Authz
machuz
0
310
Other Decks in Technology
See All in Technology
エンジニアに定年なし! AI時代にキャリアをReboot — 学び続けて未来を創る
junjikoide
0
180
マイクロリブート ~ACEマインドセットで実現するアジャイル~
sony
0
270
技術の総合格闘技!?AIインフラの現在と未来。
ebiken
PRO
0
250
"おまじない"はもう卒業! デバッガで探るSpring Bootの裏側と「学び方」の学び方
takeuchi_132917
0
120
自己的售票系統自己做!
eddie
0
430
Spring Boot利用を前提としたJavaライブラリ開発方法の提案
kokihoshihara
PRO
2
140
コミュニティと共に変化する 私とFusicの8年間
ayasamind
0
450
内部品質・フロー効率・コミュニケーションコストを悪化させ現場を苦しめかねない16の組織設計アンチパターン[超簡易版] / 16 Organization Design Anti-Patterns for Software Development
mtx2s
2
210
Flutter DevToolsで発見! 本番アプリのパフォーマンス問題と改善の実践
goto_tsl
1
390
Quarkusで作るInteractive Stream Application
joker1007
0
110
レビュー負債を解消する ― CodeRabbitが支えるAI駆動開発
moongift
PRO
0
160
バクラクの AI-BPO を支える AI エージェント 〜とそれを支える Bet AI Guild〜
tomoaki25
2
670
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
36
7k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Making Projects Easy
brettharned
120
6.4k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
A Modern Web Designer's Workflow
chriscoyier
697
190k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Mobile First: as difficult as doing things right
swwweet
225
10k
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 を心待ちに。
ご清聴 ありがとうございました。