Skip to content

DNET_GoogleColaboratory

nishi_74322014 edited this page Sep 11, 2026 · 1 revision

Google Colaboratory

概要

Google Colab(oratory)

  • Googleが提供している
  • Colab(コラボ)とも呼ばれる
  • インストール不要の
  • 無料のWebサービス
  • 機械学習の「教育及び研究用」で(廉価)、
  • 直ぐにPython環境を整えることが出来る

前提

  • 無料で利用する事が出来る。

  • Googleアカウントが必要になる。

  • 1回12時間のCPU及びGPU環境が利用可能。

  • 無料版はインスタンスが持続しない

    • 計算資源(特にGPU/TPU)の公平で効率的な利用のため。
    • 長時間のインスタンス持続を望む場合、有料版を検討。

使い始め

Secret管理

KVSっぽく定義をして、次のコードで Python の秘密鍵にアクセス

from google.colab import userdata
userdata.get('secretName')

Googleドライブ連携

セッションが切れると、ローカルファイルが保証されないので重要

  • 左端のファイルのアイコンを押下
  • Googleドライブ風アイコンを押下
  • コマンドの書かれたセルに誘導される。
  • セルの実行ボタンを押下してコマンド実行
  • Googleドライブへのアクセスを認証認可する。
  • すると、ファイルシステム上にdriveを確認できる。

Googleドライブ連携

  • ただし、ココからコード・ファイルは開けいない(データ用)
  • コード・ファイルはGoogleドライブでダブル・クリックするとColabで開く。
  • そのようにして開いたファイルは、以降、上書き保存できる。

詳細

使い方は、各種Notebook系ツール(データサイエンス力の該当節を参照)と同じ。

課金のタイプ

ColabでのA100は廉価

  • NVIDIA A100 GPUは、1枚あたり数10万円〜100万円のハイエンドGPU
  • データセンター向けのGPUであり、個人で導入するには非常に高価
プラン 月額(税込) 使用可能なGPU 備考
無料版 0円 T4 など(不定) A100は使えない
Pro 約1,180円(100CU) A100に当たることもある 混雑時は制限あり
Pro+ 約5,200円(500CU) A100の優先枠あり 比較的安定して使える
Pay As You Go 100CU購入(1,000円から) A100, L4など 使用時間に応じ柔軟に使いたい場合
Enterprise 要問い合わせ H100, A100など高性能GPU優先 SLA、専用リソース、管理機能あり

※ CU(コンピューティングユニット):リソースを利用する際に消費される単位で90日間有効

※ Pay As You Go は、Pro/Pro+ に比べて A100 の優先度が低いことある(特に混雑時)。

環境のタイプ

ランタイムのタイプ

  • Python 3
  • R
  • Julia

ハードウェア アクセラレータ

  • 無料

    • CPU
    • T4 GPU
    • v2-8 TPU
  • 有料

    • L4 GPU
    • A100 GPU
    • v6e-1 TPU
    • v5e-1 TPU

ハードウェア アクセラレータとCU消費量

性能順

  1. v6e-1 TPU(v5e に対して 4.7 倍 程度の性能)
  2. H100(Hopper世代 / 2022年)
  3. v5e-1 TPU(≒ H100 と同等)
  4. A100(Ampere世代 / 2020年)
  5. V100(Volta世代 / 2017年)
  6. L4(Ada Lovelace世代 / 2023年)
  7. T4(Turing世代 / 2018年)
  8. P100(Pascal世代 / 2016年)

CU消費量:A100 ≒ 15/時間、L4 ≒ 5/時間、T4 ≒ 2/時間)、A100は500CUで33時間、T4は100CUで50時間

ハードウェア アクセラレータの確認方法

右上の接続情報からも確認できるが、以下でも確認できる。

  • nvidia-smi

    gpu_info = !nvidia-smi
    gpu_info = '\n'.join(gpu_info)
    if gpu_info.find('failed') >= 0:
      print('Not connected to a GPU')
    else:
      print(gpu_info)
    Fri Oct 10 09:48:23 2025
    +-----------------------------------------------------------------------------------------+
    | NVIDIA-SMI 550.54.15              Driver Version: 550.54.15      CUDA Version: 12.4     |
    |-----------------------------------------+------------------------+----------------------+
    | GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
    |                                         |                        |               MIG M. |
    |=========================================+========================+======================|
    |   0  NVIDIA A100-SXM4-40GB          Off |   00000000:00:04.0 Off |                    0 |
    | N/A   35C    P0             42W /  400W |       0MiB /  40960MiB |      0%      Default |
    |                                         |                        |             Disabled |
    +-----------------------------------------+------------------------+----------------------+
    
    +-----------------------------------------------------------------------------------------+
    | Processes:                                                                              |
    |  GPU   GI   CI        PID   Type   Process name                              GPU Memory |
    |        ID   ID                                                               Usage      |
    |=========================================================================================|
    |  No running processes found                                                             |
    +-----------------------------------------------------------------------------------------+
    
  • CPUメモリ

    from psutil import virtual_memory
    ram_gb = virtual_memory().total / 1e9
    print('Your runtime has {:.1f} gigabytes of available RAM\n'.format(ram_gb))
    
    if ram_gb < 20:
      print('Not using a high-RAM runtime')
    else:
      print('You are using a high-RAM runtime!')
    Your runtime has 89.6 gigabytes of available RAM
    You are using a high-RAM runtime!
    
  • GPUメモリ

    import torch
    
    if torch.cuda.is_available():
      for i in range(torch.cuda.device_count()):
        print(f"GPU {i}: {torch.cuda.get_device_name(i)}")
        print(f"  Total memory: {torch.cuda.get_device_properties(i).total_memory / 1e9:.1f} GB")
    else:
      print("No GPU available")
    GPU 0: NVIDIA A100-SXM4-40GB
    Total memory: 42.5 GB
    

参考

移行メモ

  • 「ココからコード・ファイルは開けいない」「優先度が低いことある」は原文ママ。
  • 「CU消費量:… T4 ≒ 2/時間)、…」の閉じ括弧のみが残っている点も原文ママ。
  • PukiWiki の + による番号付きリストは、Markdown の番号付きリストにした。
  • 元 Wiki の表は GitHub の表に変換した。
  • PukiWiki のページ内アンカ(#xxxxxxxx)は GitHub Wiki では再現できないため、 他ページのアンカを指すリンクは「〜(ページ名 の該当節を参照)」の形に置き換えた。
  • 元 Wiki の行頭空白によるプレフォーマット・ブロックは、 フェンス付きコードブロックにした。

Tags: 移行, Google Colaboratory, Colab, Jupyter, GPU, TPU, A100, Colab Pro, 機械学習, Googleドライブ

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally