Q: Is there any way to programmatically prevent Google Colab from disconnecting on a timeout?
The following describes the conditions causing a notebook to automatically disconnect:
Google Colab notebooks have an idle timeout of 90 minutes and absolute timeout of 12 hours. This means, if user does not interact with his Google Colab notebook for more than 90 minutes, its instance is automatically terminated. Also, maximum lifetime of a Colab instance is 12 hours.
Naturally, we want to automatically squeeze the maximum out of the instance, without having to manually interact with it constantly. Here I will assume commonly seen system requirements:
- Ubuntu 18 LTS / Windows 10 / Mac Operating systems
- In case of Linux-based systems, using popular DEs like Gnome 3 or Unity
- Firefox or Chromium browsers
I should point out here that such behavior does not violate Google Colab"s Terms of Use, although it is not encouraged according to their FAQ (in short: morally it is not okay to use up all of the GPUs if you don"t really need it).
My current solution is very dumb:
- First, I turn the screensaver off, so my sreen is always on.
- I have an Arduino board, so I just turned it into a rubber ducky usb and make it emulate primitive user interaction while I sleep (just because I have it at hand for other use-cases).
Are there better ways?
How to prevent Google Colab from disconnecting? absolute: Questions
How to get an absolute file path in Python
3 answers
Given a path such as "mydir/myfile.txt"
, how do I find the file"s absolute path relative to the current working directory in Python? E.g. on Windows, I might end up with:
"C:/example/cwd/mydir/myfile.txt"
Answer #1
>>> import os
>>> os.path.abspath("mydir/myfile.txt")
"C:/example/cwd/mydir/myfile.txt"
Also works if it is already an absolute path:
>>> import os
>>> os.path.abspath("C:/example/cwd/mydir/myfile.txt")
"C:/example/cwd/mydir/myfile.txt"
How to prevent Google Colab from disconnecting? absolute: Questions
How to check if a path is absolute path or relative path in a cross-platform way with Python?
3 answers
UNIX absolute path starts with "/", whereas Windows starts with alphabet "C:" or "". Does python have a standard function to check if a path is absolute or relative?
Answer #1
os.path.isabs
returns True
if the path is absolute, False
if not. The documentation says it works in windows (I can confirm it works in Linux personally).
os.path.isabs(my_path)
How to prevent Google Colab from disconnecting? absolute: Questions
How to join absolute and relative urls?
3 answers
I have two urls:
url1 = "http://127.0.0.1/test1/test2/test3/test5.xml"
url2 = "../../test4/test6.xml"
How can I get an absolute url for url2?
Answer #1
You should use urlparse.urljoin :
>>> import urlparse
>>> urlparse.urljoin(url1, url2)
"http://127.0.0.1/test1/test4/test6.xml"
With Python 3 (where urlparse is renamed to urllib.parse) you could use it as follow:
>>> import urllib.parse
>>> urllib.parse.urljoin(url1, url2)
"http://127.0.0.1/test1/test4/test6.xml"