VULTR

Vultr の Bare Metal Instance では PMU の機能がフルに使える

EC2 の c5 instance では専有ホストを使わなくても PMU が使える で紹介したとおり、AWSでもc5からはPMUが使えますが、最低でも1ソケット専有するサイズ(9xlarge, 2018-01-01時点でオハイオリージョンで $1.53/h)でないといけない、使える機能も制限されていてLBRなどは使えないという欠点がありました。

最近 Vultr の Bare Metal Instance というものを見つけて、これならフルでPMUが使えるんじゃないかと思って契約してみました。

Ubuntu 17.10 で見た cpuinfo と perf list はこちらです。

perf list を見ると大量のハードウェアイベントが取れているのがわかります。
また、 sudo perf top --call-stack=lbr で、 lbr が利用できることも確認しました。

これで 300 \$/month, 0.446 \$/hour なので、数日集中してガッツリとプロファイルや最適化をしてみたいときには良さそうです。

もちろん、EC2に比べて不便な点もあります。

  • 停止しても課金される。
  • (現時点では)スナップショットやバックアップは取れなさそう。毎回新規OSの状態からスタート。

一応起動時に実行するスクリプトを指定することができるのでそこでプロビジョニングすることはできます。
また、別途ストレージを契約してアタッチしておけば永続化したいデータをちゃんと残すこともできます。

ただし、PMUのフル機能が必要ない場合は、EC2の方が使い勝手が良さそうです。値段的にもSpot Instanceを使えば同じくらいにできますし、普段は2xlargeを使っておいてプロファイルを取りたいときだけ9xlargeに変更するといったことも可能です。