Colab 무료 GPU - Colab mulyo GPU

1. Colab이란 ?

줄여서 'Colab'이라고도 하는 Colaboratory를 사용하면 브라우저에서 Python을 작성하고 실행할 수 있습니다. Colab은 다음과 같은 이점을 자랑합니다.
구성이 필요하지 않음
GPU 무료 액세스
간편한 공유
학생이든, 데이터 과학자든, AI 연구원이든 Colab으로 업무를 더욱 간편하게 처리할 수 있습니다. Colab 소개 영상에서 자세한 내용을 확인하거나 아래에서 시작해 보세요.

Colab

쉽게말해서 데이터분석에서 자주 사용되는 Jupyter 노트북을 구글에서 클라우드 형태로 컴퓨팅을 제공하는 아주 아주 아주 좋은 무료 머신러닝 플랫폼이다.

2. 스펙

Colab 무료 GPU - Colab mulyo GPU

출처

코렙은 3가지 과금형태를 갖고있다.
1. 무료
2. Pro
3. Pro +(최신버전)

GPU 상세 스펙

K80
(Kepler)

K80: 4992 * 560/875 MHz, 5591–8736 GFLOPS, 2x12G (Nov 2014)

T4
(Turing)

PCIe: 2560 * 585/1590 MHz, 8100 GFLOS, 16G (Sep 2018)

P100
(Pascal)

mezzanine(NVLink): 3584 * 1328/1480 MHz, 9519–10609 GFLOPS, 16G (Apr 2016)

제공되는 최소 GPU는 K80인데 이정도만되도 개인이 참여하는 머신러닝 해커톤에 참가할 수 있다.(상위권은 힘들다 ..)

Pro +는 K80 T4 P100에서 랜덤으로 할당되는 것으로 보인다.
게다가 램이 무려 52기가 제공되서 하드하게 연구하는 사람들은 환경을 구축하지 않고 손쉽게 쓰기 쉬워보인다. 게다가 백그라운드 연산도 제공해서 가끔 딴짓하다가 런타임 종료되는 문제에 그나마 신경을 덜 쓸 수 있어보인다.

현재 제공되는 국가는
미국, 캐나다, 일본, 브라질, 독일, 프랑스, 인도, 영국 및 태국 국가에서 사용할 수 있다. 아마 한국에서 이용을 못한다고 할텐데 그냥 결제를 미화로 하면 이용할 수 있다

3. 결론

Colab 무료 GPU - Colab mulyo GPU

Colab 프로 플러스는 월 6만원으로 개인이 쓰기에는 오버스펙으로 보이지만 P100이 500만원 정도하니 욕심있는 사람들에게 나쁘지 않을 것 같다.

Colab 무료 GPU - Colab mulyo GPU

Colab은 무료로 GPU를 제공하는데, 시간제한이 있다. 무료로는 12시간 이내로 제한이 된다고 한다.
사실 유료 버전도 24시간 사용을 보장하지 못한다고 한다.

아무튼 해결방법은

가지고있는 다른 계정으로 colab을 이용하거나 사용량이 적은 시간에 이용하면 된다.

특히 코랩은 전세계에서 이용하다보니 새벽시간대에 사용량 제한이 잘 걸린다고 한다. 아침시간에 다시 들어가면 제한이 풀릴 수도 있다.
하지만 다른 계정으로 로그인하는 게 가장 마음 편하긴 하다.

Colaboratory

자주 묻는 질문(FAQ)

기본 사항

Colaboratory란 무엇인가요?

줄여서 'Colab'이라고도 하는 Colaboratory는 Google 리서치팀에서 개발한 제품입니다. Colab을 사용하면 누구나 브라우저를 통해 임의의 Python 코드를 작성하고 실행할 수 있습니다. Colab은 특히 머신러닝, 데이터 분석, 교육에 적합합니다. 더 기술적으로 설명하면 Colab은 호스팅된 Jupyter 노트북 서비스로, 설정하지 않고 사용 가능하며 GPU를 포함한 컴퓨팅 리소스를 무료로 사용할 수 있습니다.

정말 무료인가요?

예. Colab은 무료로 사용할 수 있습니다.

믿기 어려울 정도로 좋아 보이는데요. 어떤 제한사항이 있나요?

Colab 리소스는 보장되거나 무제한으로 제공되지는 않으며 사용량 한도가 달라지기도 합니다. 이런 방식으로 운영해야 Colab에서 리소스를 무료로 제공할 수 있기 때문입니다. 자세한 내용은 리소스 한도를 참고하세요.

향상된 리소스를 더 안정적으로 사용하는 데 관심이 있다면 Colab Pro가 적합할 수 있습니다.

Colab 리소스는 상호작용 사용 사례에 우선 할당됩니다. 일괄 연산, 다른 사용자에게 부정적인 영향을 줄 수 있는 작업, 정책을 우회하는 작업 등은 금지됩니다. 다음은 Colab 런타임에서 허용되지 않는 사항입니다.

  • Colab과의 상호작용 연산과 관련이 없는 파일 호스팅, 미디어 게재 또는 기타 웹 서비스 제공
  • 토렌트 다운로드 또는 P2P 파일 공유 참여
  • 원격 데스크톱 또는 SSH 사용
  • 원격 프록시 연결
  • 암호화폐 채굴
  • 서비스 거부 공격 실행
  • 비밀번호 크래킹
  • 여러 계정을 사용하여 액세스 제한이나 리소스 사용 제한 우회
  • 딥페이크 생성

유료 사용자를 위한 추가 제한사항은 여기에서 확인하시기 바랍니다.

Jupyter와 Colab 사이에는 어떤 차이점이 있나요?

Jupyter는 Colab의 기반이 되어 주는 오픈소스 프로젝트입니다. Colab을 사용하면 아무것도 다운로드하거나 설치, 실행하지 않고도 Jupyter 메모장을 다른 사람과 공유할 수 있습니다.

메모장은 어디에 저장되나요? 저장한 메모장을 공유할 수 있나요?

Colab 메모장은 Google Drive에 저장되거나 GitHub에서 로드할 수 있습니다. 또한 Colab 메모장은 Google Docs 또는 스프레드시트와 마찬가지로 공유할 수 있습니다. Colab 메모장 오른쪽 상단에서 공유 버튼을 클릭하거나 Google Drive의 파일 공유 안내를 따르세요.

메모장을 공유하면 무엇이 공유되나요?

메모장을 공유하면 텍스트, 코드, 출력, 댓글 등 메모장의 모든 내용이 공유됩니다. 메모장을 저장할 때 수정 > 노트북 설정 > 이 메모장을 저장할 때 코드 셀 출력 생략을 선택하면 코드 셀 출력이 저장되거나 공유되지 않습니다. 설정한 모든 맞춤설정 파일 및 라이브러리를 비롯해 사용 중인 가상 머신은 공유되지 않습니다. 그러므로 메모장에 필요한 맞춤설정 라이브러리 또는 파일을 설치하고 로드하는 셀을 포함하는 것이 좋습니다.

기존의 Jupyter/IPython 메모장을 Colab으로 가져올 수 있나요?

예. 파일 메뉴에서 '메모장 업로드'를 선택하세요.

Colab 메모장을 검색하려면 어떻게 해야 하나요?

Google Drive로 Colab 메모장을 검색할 수 있습니다. 메모장 뷰 왼쪽 상단에 있는 Colab 로고를 클릭하면 드라이브에 저장된 메모장이 모두 표시됩니다. 파일 > 메모장 열기를 사용하면 최근에 열었던 메모장을 검색할 수 있습니다.

코드는 어디에서 실행되나요? 브라우저 창을 닫으면 실행 상태는 어떻게 되나요?

코드는 계정 전용 가상 머신에서 실행됩니다. 한동안 유휴 상태이면 가상 머신은 삭제되고 Colab 서비스에서 설정된 최대 수명이 적용됩니다.

데이터를 다운로드하려면 어떻게 해야 하나요?

이 안내에 따라 내가 작성한 Colab 메모장을 Google Drive에서 다운로드하거나, Colab의 파일 메뉴에서 다운로드할 수 있습니다. 모든 Colab 메모장은 오픈소스 Jupyter 메모장 형식(.ipynb)으로 저장됩니다.

코드가 실행되는 가상 머신을 초기화하려면 어떻게 해야 하나요? 간혹 초기화가 불가능한 이유는 무엇인가요?

런타임 > 런타임 연결 해제 및 삭제를 선택하면 나에게 할당된 모든 관리형 가상 머신이 원래 상태로 돌아갑니다. 초기화는 시스템 파일을 실수로 덮어썼거나 호환되지 않는 소프트웨어를 설치하여 가상 시스템이 비정상 상태가 된 경우 도움이 됩니다. Colab에서는 과도한 리소스 소모를 방지하기 위해 초기화 실행 빈도를 제한하고 있습니다. 초기화에 실패했다면 나중에 다시 시도해 보세요.

간혹 drive.mount()가 실패하면서 '타임아웃' 메시지가 표시되는 이유와 drive.mount()로 마운트된 폴더에서 I/O 작업이 실패하는 이유는 무엇인가요?

폴더에 파일 또는 하위 폴더가 너무 많은 경우 Google Drive 작업이 타임아웃될 수 있습니다. 수천 개의 항목이 최상위 수준의 '내 드라이브' 폴더에 직접 포함되어 있는 경우 드라이브를 마운트하면 타임아웃이 발생할 가능성이 높습니다. 타임아웃되기 전에 실패한 시도의 상태가 로컬에 부분적으로 캐시되므로 반복해서 시도하면 성공할 수도 있습니다. 이 문제가 발생할 경우 '내 드라이브'에 직접 포함된 파일 및 폴더를 하위 폴더로 이동해 보세요. drive.mount()가 성공한 후 다른 폴더의 항목을 읽으면 비슷한 문제가 발생할 수 있습니다. 많은 항목이 포함된 폴더의 항목에 액세스하면 OSError: [Errno 5] Input/output error와 같은 오류가 발생할 수 있습니다. 직접 포함된 항목을 하위 폴더로 이동하면 이 문제를 해결할 수 있습니다.
파일 또는 하위 폴더를 휴지통으로 이동하여 '삭제'하는 것으로는 충분하지 않을 수 있습니다. 이 경우 휴지통을 비워야 합니다.

'드라이브 마운트'를 사용하면 가끔 노트북에 코드가 삽입되는 이유는 무엇인가요?

Colab에 Google Drive를 마운트하면 노트북의 모든 코드가 Google Drive의 모든 파일에 액세스할 수 있게 됩니다. 일반적으로 사용자가 새 런타임에 연결할 때마다 노트북에 코드 셀을 추가하여 이 액세스 권한을 수동으로 부여해야 합니다. 이렇게 하면 사용자가 노트북에 부여되는 권한을 완전히 파악할 수 있습니다.
Google Drive 승인을 한 번만 하면 되고 이후 세션에서는 Google 드라이브가 자동으로 다시 마운트되는 경우도 있습니다. Google은 파일 보호를 위해 노트북이 여러 검사를 통과한 경우에만 이를 허용합니다. 예를 들어 다른 사용자가 수정한 노트북에서는 Google Drive가 자동으로 마운트되지 않습니다.

간혹 Drive 작업이 할당량으로 인해 실패하는 이유는 무엇인가요?

Google Drive에는 사용자당 및 파일당 작업 수와 대역폭 할당량 등 다양한 한도가 적용됩니다. 이러한 한도를 초과하면 위에서와 같이 Input/output error가 트리거되며 Colab UI에 알림이 표시됩니다. 일반적으로 많은 사용자가 사용하는 공유 파일에 액세스하거나 너무 많은 수의 서로 다른 파일에 너무 빠르게 액세스하면 한도가 초과됩니다. 다음 해결 방법을 사용해 보세요.

  • drive.google.com을 사용해 파일을 복사하고, 공유 범위를 넓게 지정하지 마세요. 다른 사용자가 한도를 모두 사용해버릴 수 있습니다.
  • I/O 읽기를 조금씩 여러 번 사용하는 대신 보관처리 형식(예: .zip 또는 .tar.gz 파일)을 사용해 드라이브에서 Colab VM으로 데이터를 복사하세요. 그런 다음 마운트된 Drive 디렉터리 대신 VM에 로컬로 데이터를 보관 취소하세요.
  • 할당량 한도가 재설정되도록 하루 동안 기다리세요.

간혹 드라이브 작업이 저장용량 할당량으로 인해 실패하는 이유는 무엇인가요?

Google Drive는 각 사용자가 드라이브에 저장할 수 있는 데이터 양에 한도를 부여합니다. Input/output error가 발생하며 드라이브 작업이 실패하고 저장용량 할당량이 초과되었다는 알림이 표시되면 drive.google.com을 사용해 일부 파일을 삭제하고 휴지통을 비워 여유 공간을 확보하세요. 이렇게 확보한 여유 공간을 Colab에서 사용할 수 있게 되기까지 잠시 시간이 걸릴 수 있습니다.

드라이브 저장용량을 추가로 구매하려면 Google Drive를 방문하세요. 참고로 드라이브 저장용량을 추가로 구매해도 Colab VM에서 사용 가능한 디스크 용량이 증가하지는 않습니다. 이러한 디스크 용량을 늘리려면 Colab Pro를 구독하세요.

리소스 한도

Colab에서 리소스가 보장되지 않는 이유는 무엇인가요?

저렴한 비용으로 강력한 GPU를 대규모로 동적으로 제공하려면 Colab에서 사용량 한도와 하드웨어 가용성을 유연하게 조정할 수 있어야 합니다.

무료 Colab 버전에서는 GPU와 같이 비용이 많이 드는 리소스에 대한 액세스가 크게 제한됩니다. Colab 유료 버전의 경우 사용자에게 비용 대비 높은 가치를 제공하기 위해 노력하고 있습니다.

GCP Marketplace를 통해 Colab에서 사용할 보장된 리소스를 구매할 수 있습니다.

Colab의 사용량 한도는 얼마인가요?

Colab에서 리소스를 무료로 제공할 수 있는 이유는 보장된 리소스 또는 무제한 리소스를 제공하는 대신 필요에 따라 사용량 한도를 동적으로 변경하는 방식으로 운영하기 때문입니다. 다시 말해 시간이 지남에 따라 전체 사용량 한도, 유휴 시간 제한 기간, VM의 최대 수명, 사용 가능한 GPU 유형, 기타 요인이 달라집니다. Colab은 이러한 한도를 공개하지 않는데, 그 이유 중 하나는 한도가 빠르게 바뀔 수 있으며 실제로도 빠르게 바뀌는 경우가 있기 때문입니다.

여기에서 유료 요금제 중 하나를 구매하면 Colab의 사용량 한도를 완화할 수 있습니다. 요금제는 리소스 사용성이 바뀔 수 있다는 점에서 비슷한 유연성을 갖습니다.

GCP Marketplace를 통해 보장된 리소스를 구매하여 Colab에서 사용할 수 있습니다.

Colab에서 사용할 수 있는 GPU 유형은 무엇인가요?

Colab에서 사용할 수 있는 GPU 유형은 시간이 지남에 따라 달라집니다. 이러한 방식으로 운영해야 Colab에서 리소스를 무료로 제공할 수 있습니다.

여기에서 유료 요금제 중 하나를 구매하면 사용 가능한 프리미엄 GPU에 액세스할 수 있습니다.

특정 전용 하드웨어에 액세스하려면 GCP Marketplace Colab을 사용해 살펴보세요.

Colab에서 노트북을 얼마나 오래 실행할 수 있나요?

Colab에서는 대화형 컴퓨팅에 우선순위를 둡니다. 유휴 상태이면 런타임이 타임아웃됩니다.

무료 Colab 버전에서는 노트북의 가용성과 사용 패턴에 따라 최대 12시간 동안 실행할 수 있습니다. Colab Pro, Pro+, 종량제 서비스를 이용하면 컴퓨팅 단위 잔액에 따라 컴퓨팅 용량을 더 알뜰하게 활용할 수 있습니다.

가용성과 사용 패턴에 따라 다르지만 일반적으로 노트북은 최대 12시간 동안 실행할 수 있습니다. Pro, Pro+ 또는 종량제 서비스에서 사용 가능한 컴퓨팅 단위가 소진되면 백엔드 종료가 발생할 수 있습니다.

Colab Pro+는 컴퓨팅 단위가 충분하다면 최대 24시간 동안 연속 코드 실행을 지원합니다. 유휴 시 타임아웃은 코드 실행이 종료되는 경우에만 적용됩니다.

GCP Marketplace에서 전용 VM을 구매하면 모든 런타임 한도 및 유휴 시 타임아웃을 염려하지 않아도 됩니다.

Colab에서 메모리를 얼마나 사용할 수 있나요?

무료 Colab 버전에서는 표준 시스템 메모리 프로필로 VM에 액세스할 수 있습니다.

유료 Colab 버전에서는 가용성과 컴퓨팅 단위 잔액에 따라 메모리 시스템 프로필이 높은 머신에 액세스할 수 있습니다.

메모리는 시스템 메모리를 의미합니다. 모든 GPU 칩은 동일한 메모리 프로필을 갖습니다.

Colab을 최대한 활용하려면 어떻게 해야 하나요?

작업을 마친 후 Colab 탭을 닫고, 작업에 필요하지 않은 GPU나 추가 메모리를 선택하지 않는 것이 좋습니다. 이렇게 하면 Colab 사용 중 사용량 한도에 도달할 가능성이 낮아집니다. 한도 도달 시 언제든지 필요한 만큼 더 많은 컴퓨팅을 구매할 수 있습니다.

Colab 유료 버전을 최대한 활용하는 방법을 자세히 알아보려면 다음을 참고하세요.Colab 구독 최대한 활용하기를 클릭합니다.

GPU가 활용되지 않고 있다는 메시지가 표시됩니다. 어떻게 해야 하나요?

Colab에서는 GPU와 TPU를 포함한 가속 컴퓨팅 환경을 선택사항으로 제공합니다. GPU 또는 TPU 런타임에서 코드를 실행한다고 해서 반드시 GPU 또는 TPU가 활용되는 것은 아닙니다. GPU 사용량 한도에 도달하지 않도록 GPU를 활용하지 않는 경우 표준 런타임으로 전환하는 것이 좋습니다. 런타임 > 런타임 유형 변경을 선택하고 하드웨어 가속기를 없음으로 설정하세요.

Colab에서 GPU 및 TPU 런타임을 활용하는 방법의 예를 보려면 GPU를 사용한 Tensorflow와 Colab의 TPU 예시 메모장을 참조하세요.

추가 질문

어떤 브라우저가 지원되나요?

Colab은 대부분의 주요 브라우저와 호환되며, 특히 Chrome, Firefox, Safari의 최신 버전을 대상으로 가장 철저하게 테스트되었습니다.

colaboratory.jupyter.org와는 어떤 관련이 있나요?

2014년에 Google에서는 Jupyter 개발팀과 함께 Colab의 초기 버전을 공개했습니다. 그 이후 Colab은 Google 내부에서 사용되면서 꾸준히 발전해 왔습니다.

다른 프로그래밍 언어도 사용할 수 있나요?

Colab은 Python과 타사 도구로 이루어진 Python 생태계를 지원하는 데 초점을 두고 있습니다. 한편 Google에서는 사용자가 R 또는 Scala 등의 다른 Jupyter 커널 지원을 바란다는 점 또한 인지하고 있습니다. 이러한 커널을 지원할 의향은 있지만, 아직 확실한 계획은 없습니다.

타사 쿠키를 허용하라는 메시지가 표시되는 이유는 무엇인가요?

Colab은 풍부한 출력 결과를 안전하게 표시하기 위해 HTML iframe과 별도의 출처에서 호스팅되는 서비스 워커를 사용합니다. 브라우저에서 iframe 내의 서비스 워커를 사용하려면 타사 쿠키를 허용해야 합니다. 모든 사이트의 타사 쿠키를 허용하는 대신 브라우저 설정에서 호스트 이름 googleusercontent.com을 허용해도 됩니다.

편집기 글꼴을 변경하려면 어떻게 해야 하나요?

Colab에서는 편집기에 일반 고정 너비 글꼴을 사용합니다. 현재 사용되는 대부분의 브라우저에서 고정 너비로 사용할 글꼴 모음을 구성할 수 있습니다. 일반적인 구성 방법은 다음과 같습니다.

  • Firefox의 경우 Firefox 지원 문서에 나와 있는 단계에 따라 '고정 너비' 글꼴을 구성합니다.
  • Chrome의 경우 'chrome://settings/fonts'로 이동하여 '고정폭 글꼴' 라벨이 있는 섹션을 수정합니다.

Colab에서 Python 2를 지원하나요?

Python 2는 Colab에서 더 이상 지원되지 않습니다. Python 2에서 Python 3로 코드를 이전하는 방법을 알아보려면 Python 2 코드를 Python 3로 포팅하기를 참고하시기 바랍니다.

Colab 유료 버전에 관한 자세한 내용은 어디에서 확인할 수 있나요?

가입 페이지에 FAQ가 있습니다.

Colab 유료 버전의 경우 결제는 어떻게 진행되나요?

가격 및 업그레이드 처리 방법을 비롯한 Colab Pro, Pro+, 사용한 만큼만 지불 등 자세한 정보는 가입 페이지를 참고하세요.