본문 바로가기
통계

colab에서 런타임 유지

by 브라더빅 2021. 5. 21.

Google Colab은 무료로 고성능의 컴퓨팅리소스를 쓰게해주는 갓글님께서 베풀어주신 은혜이다.

기본적으로 무료버전의경우 12시간의 런타임이 제공되고(Pro버전은 24시간) 요즘같이 그래픽카드가 금값일때 더욱 유용하다.(코인....)

딥러닝과같은 무거운 모델의경우 GPU성능에따라 속도도 빨라지지만, 모델의 복잡도나 크기에따라 모델이 작동되지 않을수도 있다. 일반적인 보급형모델의 경우 커봐야 대부분이 11Gbyte 메모리를 가지며, 이는 딥러닝 모델에있어서 큰 리스크이다. 

그에 반해 Colab의경우 일반보급형모델이상의 메모리크기를 제공해준다.

더보기

일반적으로 서버용 GPU(K80, T4, P100 등)가 할당이 되며, Pro버전이 높은사양을 할당받을확률이 높다. 다만, 구글도 컴퓨팅자원은 한정적이기 때문에, 많은인원이 몰리는시간에는 비교적 낮은사양의 리소스가 할당된다.

이러한 이유로 필자를 비록한 많은 연구자들이 코랩을사용하고있지만, 한가지 단점이 존재한다.

12시간의 런타임을 제공한다고 말하고있지만, 자세히 살펴보면 90분이내에 입력이 없으면 해당 연결은 끊어질 수 있다.(최대 90분인것 같고, 그 전에 많이 끊긴다. Colab FAQ 참고)

일반적으로 학습을 돌려놓으면, 몇시간이상의 학습시간이 필요한경우도 많은데, 이러한경우 굉장히 난감하다.(일정기준의 callback을 두어 weight를 저장하는 방법이 있지만, 다소 번거롭다.)

이러한 문제를 해결하기위한 간단한 방법으로 JavaScript 코드를 이용하여 일정시간마다 Colab에 이벤트를 주는 방법이 있다.

방법은 다음과 같다.

 

1. 아래의 코드를 복사한다. 해당코드는 JavaScript 코드로써, 30분마다 코랩에 클릭이벤트를 주는 코드이다.

function ClickConnect(){
console.log("Working"); 
document.querySelector("colab-toolbar-button#connect").click() 
}setInterval(ClickConnect, 1800000)

2. 코랩화면으로 이동한 후 F12버튼을 눌러 개발자도구를 띄운다.

3. 띄워진 개발자도구에서 Console탭을 클릭한다.

4. 1번에서 복사한 코드를 붙여넣고 실행한다.

5. 이제 12시간동안 신경꺼도된다.

 

다만, 여기서 실행한 컴퓨터의 전원을 끄거나 절전모드를 해서는 안된다.

 

참고자료

https://velog.io/@0hye/Google-Colab-%EC%97%B0%EA%B2%B0-%EC%9C%A0%EC%A7%80

 

Google Colab 연결 유지

최근에 Colab Pro 를 구독했다. 열나게 코딩을 하고 학습을 돌려놓고 브라우저를 종료시켰다. 나는 브라우저를 종료하더라도 24시간 동안 학습이 잘 진행될 거라고 생각했다. 몇 시간 후에 다시 Cola

velog.io

 

'통계' 카테고리의 다른 글

MAPE Issue  (0) 2021.06.10