Diary/2018-3-29
AWS F1のコスト
手段と目的があべこべだけど,AWS F1を使って何かするコストについて考えてみる.
https://aws.amazon.com/jp/ec2/pricing/on-demand/
バージニアリージョン,2018年3月調べ.$1=108円.
- AWS F1自体の価格
インスタンス名 | vCPU | ECU | メモリ(GB) | インスタンスストレージ(GB) | 料金 |
---|---|---|---|---|---|
f1.2xlarge | 8 | 26 | 122 | 1 x 470 NVMe SSD | $1.65 /1 時間 |
f1.16xlarge | 64 | 188 | 976 | 4 x 940 NVMe SSD | $13.2 /1 時間 |
丸一日使い続けるようなアプリ(何かしらのサービス?)を走らせるとすると,
f1.2xlargeだと,1年で
(* 1.65 24 365 108) => 1,561,032円
年間で150万は稼げるようなアプリに使わないといけない,ということね.
そもそもf1.2xlarge自体が,結構強いインスタンスではある.
同じくらいのメモリ,インスタンスストレージ量でみてみると,
インスタンス名 | vCPU | ECU | メモリ(GB) | インスタンスストレージ(GB) | 料金 | f1.2xlargeとの比較 |
---|---|---|---|---|---|---|
i3.large | 2 | 7 | 15.25 | 1 x 475 NVMe SSD | $0.156 /1 時間 | CPU-/ECU-/メモリ-/ストレージ= |
x1e.xlarge | 4 | 12 | 122 | 1 x 120 SSD | $0.834 /1 時間 | CPU-/ECU-/メモリ=/ストレージ- |
r4.4xlarge | 16 | 53 | 122 | EBS のみ | $1.064 /1 時間 | CPU+/ECU+/メモリ=/ストレージ- |
g3.4xlarge | 16 | 47 | 122 | EBS のみ | $1.14 /1 時間 | CPU+/ECU+/メモリ=/ストレージ-/GPUあり |
x1e.2xlarge | 8 | 23 | 244 | 1 x 240 SSD | $1.668 /1 時間 | CPU=/ECU=/メモリ+/ストレージ- |
f1.2xlargeは,FPGAが載ってるから高い,というわけではなくて,
NVMe SSDやvCPUからすると,それなりな気はする.
何かサービスを考えるのであれば,FPGAはもちろんNVMeを活用して
x1e.xlargeの2倍,x1e.2xlarge程度の何かができないといけなさそう.
計算リソースという意味では,g3.4xlargeがコンペティタかな.
ちょっとFPGAで何か動かしてみたい,という意味では,
たとえば,何かのシミュレーションで1週間くらいのアプリを
動かしてみようとすると
(* 1.65 24 7 108) => 29,937円
時給1000円のアルバイトなら30時間,
わりとフルにバイトをいれて一週間分くらい,という感覚か.
趣味的に,なにか面白い体験をする,という意味では,
仮に一回の飲み会が10,000円だとすると
(/ 10000 (* 1.65 108)) => 56
で56時間は遊べることになる.
映画を一回見るのに2000円かかるとすると,
(/ 2000 (* 1.65 108)) => 11.22334455667789
で,映画一回分とAWS F1の11時間分が同じくらい.
ちなみに,AWS F1よりはずっと小さいけれどそこそこ遊べる規模のFPGAを考えてみると,
KC705が20万,KCU105が30万くらい.
買ってから丸々動かし続けるなら,
(/ 300000 (* 1.65 24 108)) => 70.14590347923681
70日分,一日4時間くらい動かして遊ぶなら,
(/ 300000 (* 1.65 4 108)) => 420.8754208754209
420日...1年以上か.
直接ビジネスにするわけではなくて大きいFPGAで試行錯誤してみたい,と考えると
AWS F1はかなりいい選択肢にみえる.
- 開発費用
SDAccelも使う,ということを考えると,メモリが32GB以上は欲しい.なので,
インスタンス名 | vCPU | ECU | メモリ(GB) | インスタンスストレージ(GB) | 料金 |
---|---|---|---|---|---|
t2.2xlarge | 8 | 可変 | 32 | EBS のみ | $0.3712 /1 時間 |
m5.2xlarge | 8 | 31 | 32 | EBS のみ | $0.384 /1 時間 |
m4.2xlarge | 8 | 26 | 32 | EBS のみ | $0.4 /1 時間 |
h1.2xlarge | 8 | 26 | 32 | 1 x 2000 HDD | $0.55 /1 時間 |
c5.4xlarge | 16 | 62 | 32 | EBS のみ | $0.68 /1 時間 |
d2.xlarge | 4 | 14 | 30.5 | 3 x 2000 HDD | $0.69 /1 時間 |
m5.4xlarge | 16 | 61 | 64 | EBS のみ | $0.768 /1 時間 |
c4.4xlarge | 16 | 62 | 30 | EBS のみ | $0.796 /1 時間 |
m4.4xlarge | 16 | 53.5 | 64 | EBS のみ | $0.8 /1 時間 |
くらいが候補か?
Amazon EBS 汎用SSD(gp2)ボリュームが$0.1/GB/月とのことなので,
仮に200GB確保し続けるとすると,
(* 0.1 200 108) => 2160.0
たとえば,t2.2xlargeで一日に6時間合成を走らせるとすると,
(+ 2160 (* 0.3712 6 30 108)) => 9376.128
で,ひと月で1万円.c4.4xlargeだと
(+ 2160 (* 0.796 6 30 108)) => 17634.24
と,ひと月で2万円弱.逆に,c4.4xlargeで1万円におさえたければ,
(/ (- 10000 2160) (* 0.796 108)) => 91.19672436255351
91時間で開発を終わらせればいい.
AFIのやりとりにS3も必要.これは,50TB/月で$0.023/GBだそう.誤差...でいいのか?
- まとめると
それなりに合成して,それなりに効率良く実機を使うとすると,
月に2〜3万円くらいを考えておけばいいのかな?(責任はもてません)
AWS-F1
screenを起動した上で,
./aws_build_dcp_from_cl.sh -notify -foreground; sleep 1; sudo halt -p
とかしてビルドを開始.
一瞬で「ビルド終わったメール」が来たけど,全然ビルドおわってない.
で,2時間くらいすると,もう一度,「ビルド終わったメール」が(スクリプトの中身をみろという話ではある).
AWSコンソールで確認すると合成につかったインスタンスがstoppedになっていた.