見出し画像

GoogleColabの90分タイムアウトを回避する

ランタイムタイムアウトが頻発

GoogleColabで学習を回しているとランタイムタイムアウトが発生
PCのスリープ設定も解除しているのになぜ?となり調査開始

調べてみるとColabのランタイムタイムアウトには2種類存在するとのこと

  1. 12時間タイムアウト

  2. 90分タイムアウト

公式を見ると"最長で12時間実行できます"との文言があるが2のタイムアウトの存在は知りませんでした。

AutoRefresh機能でタイムアウトを回避

12時間タイムアウトは不可避のようなので90分タイムアウトの対策を実施
以下サイトを参考に対応を実施して回避に成功しました

以下からは私が実際にトライした際に気づいた注意点をまとめます

ポイント1: 実行後、必ず1回手動リロードを行う

1回目はポップアップが出てしまい、更新されない

プログラム実行後、必ず手動で先にリロードを行なってください
1回目はポップアップが出てきて"再読み込み"を押下する必要があります
一度やればそれ以降は出てきません

ポイント2: 全てのセルで実行処理を行なってから手動リロード

実行予定セルはあらかじめセル実行処理を走らせてから手動リロードをする必要があります
理由は再度ポップアップが出てしまうためです
具体例でOKケースとNGケースを記載します

OKケース1

notebookの1セル目のみを実行(Shift+Enter)

1セル目実行中に手動リロード(ポップアップ再読み込み)

1セル目実行中に自動リロード

OKケース2

notebookの1セル目, 2セル目を実行(2セル目は1セル目実行完了待ち)

1セル目実行中に手動リロード(ポップアップ再読み込み)

1セル目実行完了

2セル目実行中に自動リロード

NGケース

notebookの1セル目を実行(Shift+Enter)

1セル目実行中に手動リロード(ポップアップ再読み込み)

1セル目実行完了

2セル目を実行(ここで再度Shift+Enter)

2セル目実行中に自動リロード

NGケースだと再度ポップアップが表示されてしまうので
手動リロードは実行セルを全て実行してから行う必要があります
そうしておけばセルをまたいでの処理だったとしてもポップアップは出なかったです

これで12時間までならタイムアウトが回避できたので
寝てる間に処理回して朝確認が可能になるのでありがたい



この記事が気に入ったらサポートをしてみませんか?