2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Colab Proが日本に上陸したので使ってみたお話

Last updated at Posted at 2021-04-30

内容

Google ColabolatoryのPro版は今まではアメリカとカナダでしか使えませんでしたが、2021年3月26日にブラジル、フランス、ドイツ、インド、日本、タイ、イギリスで正式サービス開始しました!
さらに!いつの間にかterminalが使えるように!!
今回はとりあえず使ってみた感想と現状でのセットアップを紹介していきます〜。

感想

  • 良いところ
    • terminalが使える
    • vimもzshもtmuxも普通に使える
    • スペックの高いGPUが優先的に割り当てられる
    • ハイメモリVMが使える
  • 残念なところ
    • 操作にタイムラグが生じる
    • 毎度環境構築するのが面倒
    • 何故かスレッド並列化できない(自分にミスがあるのかも) ハイメモリVMでなければできました!

登録

登録はめっちゃ簡単!使いたいgoogleアカウントでログインしてからColab Pro - Google Colabにアクセスして情報を入れるだけ!
スクリーンショット 2021-04-30 17.30.05.png

Terminalの雰囲気

なんとterminalが使えるという話でした。今までも!%%bashで出来てはいたものの、なんか面倒だし.py動かすのも面倒だしvimは使えないし。それがかなり解決されました。
zshもaptでinstallできましたし、.zshrcをいじることで下記のようにカスタマイズもできましたよ!!(感激)
スクリーンショット 2021-04-30 17.20.45.png

もちろんvimも.vimrcでカスタマイズできました〜!
スクリーンショット 2021-04-30 17.21.31.png

さらにvimのパッケージも使えました。vim使いとしては願ったりかなったり...。
スクリーンショット 2021-04-30 17.22.30.png

tmuxも普通に使えました!
スクリーンショット 2021-04-30 17.47.34.png

今後の環境構築の見通し

とは言え、毎度カスタマイズしたりinstallしたりするのは面倒なもの。ということで、最善策ではないでしょうが、google driveにsetup.shなるshell scriptを作成し、毎度やる作業(install関係であればapt install xxやファイル作成であればcat <<EOF > xx.ext)を全て書き込んで、使う時にgoogle driveをマウントしてsh setup.shで環境構築することにしました。現状それで上手く行っています!

[追加]
現在はdotfilesというrepoでgit管理する体制に移行したので、colabでもgit cloneしてsymbolを張った方が良いですね。そちらも別記事にて追々書いていきたいと思います。

スペック

$N = 1$ですが。

  • 通常のCPU
    • memory: 13.7 GB
    • Core数: 4
  • ハイメモリVM
    • memory: 27.4 GB
  • GPU
    • 種類: Tesla P100-PCIE
    • memory: 16 GB

通常盤Colabでは同じタイプで複数セッションができなかったと思いますが、Colab Proではできました。Colab Proを2ヶ月ほど使ってのメモ(良い点 / イマイチな点)によれば、Colab ProでもGPUを使いすぎると制限かかるみたいなので、あまりにも並列して使おうとしては失敗しそうですね。とはいえ、研究ならば仮実験として、個人であれば簡単な実験やお遊びとしてはかなり使えると思います。

tmuxが使えたのは驚きでした。ですが、1つのセッションでtmuxを使い2つのプログラム回すと、コア数が少なくメモリを食い合うためか1つだけプログラムを回した時より倍近くかかりました。並列させるなら複数セッションで回すべきかもしれません(その場合は速度は落ちませんでした)。コア数がもっと多かったら並列して動かせて嬉しいんだけどなぁ...(欲張るな笑)。
ちなみに、CPUでは5つ、GPUでは3つのセッションを立ち上げることができました。それ以上では、アクティブなセッションが多すぎますと怒られてしまいました、、、

  • マルチスレッドが落ちる
    • ローカルPCでは複数スレッドで動いていたシミュレーションが、Colab Proでは動きませんでした。Errorは出ず、途中から反応がない感じです。スレッドを1つにすると正常に動くので、スレッドの並列化あたりは何かトラップがありそうです。解決方法ご存知の方はご教授頂けますと幸いです。
    • [2021/05/01 追記]
      複数スレッドできました。どうやら、ハイメモリに設定すると理由はよく分かりませんが失敗するようです。あれこれ調べてみると、multiprocessing.queue()get()で失敗していました。それ以上のことはよく分かりかねますが。スレッド並列化する場合で特にメモリに困っていない場合は、ハイメモリVMは使わない方が吉かもしれません。
2
3
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?