【Google Colaboratory】各種制限について

Google Colaboratory(以下 Colab )では用意されたPythonの環境を無料で利用することができます。しかしながら、なんの制限もなく利用することはさすがのGoogleでもできません。

そのため、どんな制限があるのか認知しておけるように本記事でまとめておきます。

スポンサーリンク
目次

Google Colaboratoryの制限まとめ

まずは Colab の制限を簡単にまとめます。

主に以下の内容になります。

・90分の時間制限(90分ルール)

・12時間の時間制限(12時間ルール)

これ以外にも細かい制限がありますが、基本的にこの2つです。

どちらも時間の制限となっておりますが、それぞれ制限となるトリガーが異なりますのでその違いを認識しておきましょう。

 

90分ルールについて

90分の時間制限、通称90分ルールについてですが、この制限はセッションが切れてから90分経過した段階で、実行していたデータがリセットされてしまいます。

そのため後続の処理を実行したいのに、エラーになったり、計算がおかしくなったりしてしまいます。

セッションが切れる要因としては以下が当てはまるかと思います。

・ノートブックの操作をせずに30分間放置

・パソコンがスリープ状態になる

なので、セッションが切れないようにその都度ケアするといった対処が必要です。

12時間ルールについて

90分ルールはセッション切れというトリガーがありましたが、12時間ルールの場合は、時間そのものがトリガーになっています。

つまり、12時間経過すると強制的に実行状態がリセットされてしまうわけですね。

一つのプログラムの処理に12時間以上かからんやろって思われるでしょうが、AIで大きめのデータを処理したり、大きめなAIのモデルを使っていると12時間を超えてしまうことがあります。

AIを個人で扱ってても稀なケースだとは思いますが、大きいAIを使いたいという人はこのルールは考慮する必要があります。

まあ12時間以上もかかるようなAIやデータを扱うことが多いのであればそれ用の環境づくりやProの契約等を考えたほうが良いとは思いますが。

90分ルールの対策

Colab を使用していて、12時間ルールについてはあまり引っかかる人はいないとは思いますが、90分ルールについてはかなりの頻度で出くわしてしまうので煩わしく感じる人は多いと思います。

そのため、ある程度どんな対処法があるのか知っておくとよいでしょう。90分ルールの対策としては基本的に以下の2つです。

・90分経つ前に定期的にマウス等を動かす。

・90分経つ前に定期的にブラウザにアクセスする。

以上です。

上記2つはプログラム等で自動化することができますが、環境によって対処策が異なるので、それぞれ環境に応じた対処策をお探しください。

MAC等の環境であればシェルスクリプトによる自動化Windowsだとバッチで同じようなことをやるのは難しいので、マウスを自動的に動かしてくれるアプリを入れるとかでしょうか。

なお、“autorefresh”なるGoogleChromeのアドオンがあるらしいのですが、マルウェアに感染したとの報告がいくつか散見されますので入れるのは絶対やめておきましょう。

その他制限について

上記以外の制限としてはメモリの制限とディスクの制限があります。

複数のノートブックの起動や莫大な量のコードを実行しているとこれらがオーバーしてしまいます。

それぞれまとめると、

RAM(メインメモリ) : 12GB

ディスク容量 : CPU/TPU 107GB , GPU 68GB

となっております。

現在どれくらいの量を使用しているかは右上の項目で確認できます。

セッションの制限(GPU) と解放方法

GPUに接続できるノートブックは1つまでです。

2つ以上接続しようとすると以下のような「アクティブなセッションが多すぎます。」と怒られてしまいます。

接続させたいセッションを選びたい場合や、今どれが動いているのかわからない場合はエラーメッセージ右下[セッションの管理]か、右上のドロップダウンメニューに同様の項目があるのでそこから、現状の確認や終了させたいセッションを選びましょう。

よくノートブック落としているはずなのにセッションだけ生きてて邪魔をしているということがあるので、上記のエラーが出た場合は一度[セッションの管理]より確認しましょう。

終了させたいセッションに対しては、各項目の右側にある「終了」をクリックすることで、セッションを落とすことができます。

以上で、制限についてのまとめは終了です。

わかりにくいところがございましたらコメント等でご連絡いただけると幸いです。

お疲れ様でした。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

本業ではPHPを使ったWEBアプリやJavaを使用した基幹アプリを作成しております。Pythonは個人的に勉強しており、E資格を取ったりしたおかげで、業務でAIの研究とかも任されるようになりました。学習のアウトプットのために本サイトを運営しておりますが、これからPythonを学ぶという人のお役に立てればいいなと思います。わからないことや調査して記事にしてほしいことがございましたらご連絡いただけると幸いです。

コメント

コメントする

目次
閉じる