PyTorchバージョンとNVIDIA GPU Compute Capability Level サポート

PyTorchバージョンとNVIDIA GPU Compute Capability Level サポート
Photo by Christian Wiediger / Unsplash

古いPyTorchコード資産を持っている会社は、昔のコードが最新のPyTorchで動かない!最新のGPUで動かない!ということに遭遇することが多いのでしょうか。
今回は、PyTorchバージョン、対応GPU Capability Level 、対応CUDAバージョンについてまとめてみます。

PyTorchがサポートするGPUの Compute Capability

PyTorch バージョン サポートされる Compute Capability (SM) レベル
1.0.0 - 1.3.1 SM_35, SM_37, SM_50, SM_60, SM_61, SM_70
1.4.0 - 1.7.1 SM_37, SM_50, SM_60, SM_61, SM_70, SM_75
1.8.0 - 1.8.1 SM_37, SM_50, SM_60, SM_70, SM_75, SM_80
1.9.0 - 1.12.1 SM_37, SM_50, SM_60, SM_70, SM_75, SM_80, SM_86
1.13.0 - 2.0.1 SM_37, SM_50, SM_60, SM_70, SM_75, SM_80, SM_86, SM_89, SM_90
2.1.0 -2.60 SM_50, SM_60, SM_70, SM_75, SM_80, SM_86, SM_89, SM_90
2.8.0 -2.90 SM_50, SM_60, SM_70, SM_75, SM_80, SM_86, SM_89, SM_90, SM_100, SM_120

PyTorch旧バージョンインストール方法参考ページ

https://pytorch.org/get-started/previous-versions/

PyTorchがサポートするPythonバージョン

PyTorch バージョン サポートされる Python バージョン
1.4.0 - 1.7.1 3.6, 3.7, 3.8
1.8.0 - 1.9.1 3.6, 3.7, 3.8, 3.9
1.10.0 - 1.12.1 3.7, 3.8, 3.9, 3.10
1.13.0 - 2.0.1 3.8, 3.9, 3.10, 3.11
2.1.0 - 2.6.0 3.8, 3.9, 3.10, 3.11, 3.12
2.8.0 以降 3.9, 3.10, 3.11, 3.12

Compute Capabilityと代表的GPUラインナップ

SM_世代 データセンター/プロ向けGPU GeForce GPU
SM_120 (Blackwell) - GeForce RTX 5090, RTX 5080, RTX 5070, RTX 5060
SM_100 (Blackwell) NVIDIA B100 (GB100), B200, GB202, GB203, GB205, GB206, GB207, NVIDIA B40, RTX PRO 6000 Blackwell -
SM_90 (Hopper) NVIDIA H100, NVIDIA H200 -
SM_89 (Ada Lovelace) NVIDIA L4, NVIDIA L40, RTX 6000 Ada Generation, L40s Ada GeForce RTX 4090, GeForce RTX 4080, GeForce RTX 4070 Ti / 4070, GeForce RTX 4060 Ti / 4060, GeForce RTX 4050
SM_86, SM_87 (Ampere) NVIDIA A100, NVIDIA A30, NVIDIA A40, RTX A2000, A3000, RTX A4000, A5000, A6000, A10, A16, A2 Tensor Core GPU, A800 40GB GeForce RTX 3090, GeForce RTX 3080, GeForce RTX 3070, GeForce RTX 3060, GeForce RTX 3050
SM_75 (Turing) Quadro RTX 8000, RTX 6000, RTX 5000, RTX 4000, T4 GeForce RTX 2080 Ti, GeForce RTX 2070, GeForce GTX 1660 Ti
SM_70, SM_72 (Volta) Tesla V100, Quadro GV100, Titan V, Xavier NX -
SM_60, SM_61, SM_62 (Pascal) Tesla P100, Quadro GP100 GeForce GTX 1080, GTX 1070, GTX 1060, GTX 1050, GTX 1030, GT 1010, Titan Xp
SM_50, SM_52, SM_53 (Maxwell) Tesla M-series, Quadro M6000 GeForce GTX 980 Ti, GTX Titan X, GTX 980, GTX 970
SM_35, SM_37 (Kepler) Tesla K40, Tesla K80 -
SM_30 (Kepler) - GeForce 700シリーズ, GT-730
SM_20 (Fermi) - GeForce 400, 500, 600, GT-630

出展: https://blog.qualiteg.com/nvidia-gpu-capability-level/

対応CUDAバージョン

SM_世代 アーキテクチャ 互換性のある最小CUDAバージョン CUDA 12.6での状態
SM_120 Blackwell CUDA 13.0以降 非対応
SM_100 Blackwell - -
SM_90 Hopper CUDA 12.0以降 対応
SM_89 Ada Lovelace CUDA 11.8以降 対応
SM_86, SM_87 Ampere CUDA 11.1以降 対応
SM_80 Ampere CUDA 11.0以降 対応
SM_75 Turing CUDA 10.0以降 対応
SM_70, SM_72 Volta CUDA 9.0以降 対応
SM_60, SM_61, SM_62 Pascal CUDA 8.0以降 対応
SM_50, SM_52, SM_53 Maxwell CUDA 6.0以降 対応
SM_30, SM_35, SM_37 Kepler CUDA 5.0以降 サポート終了
SM_20 Fermi CUDA 3.2以降 サポート終了

関連ポスト

NVIDIA GPU 一覧・検索ツール
NVIDIA GPU と Capability Level

Read more

Pythonの落とし穴:__len__メソッドを実装したらオブジェクトの真偽値判定が変わってしまった話

Pythonの落とし穴:__len__メソッドを実装したらオブジェクトの真偽値判定が変わってしまった話

こんにちは! Pythonでカスタムクラスを作成していて、 「オブジェクトは存在するのにif文でFalseと判定される」 という不可解な現象に遭遇したことはありませんか? この記事では、__len__メソッドを実装することで生じる、予期しない真偽値判定の挙動について解説いたします! 実際に遭遇したバグ ユーザーの投稿を管理するクラスを実装していたときのことです class PostManager: """ブログ投稿を管理するクラス""" def __init__(self, user_id): self.user_id = user_id self._posts = [] self._cache = {} def __len__(self): """投稿数を返す""" return len(self._posts) def add_post(

By Qualiteg プロダクト開発部
CEATEC 2025に出展します!フォトリアルAIアバター「MotionVox🄬」の最新版を実体験いただけます

CEATEC 2025に出展します!フォトリアルAIアバター「MotionVox🄬」の最新版を実体験いただけます

株式会社Qualitegは、2025年10月14日(火)~17日(金)に幕張メッセで開催される「CEATEC 2025」に出展いたします。今回の出展では、当社が開発したフォトリアリスティックAIアバター技術「MotionVox🄬」をはじめ、最新のAI技術とビジネスイノベーションソリューションをご紹介いたします。 出展概要 * 会期:2025年10月14日(火)~10月17日(金) * 会場:幕張メッセ * 出展エリア:ネクストジェネレーションパーク * ブース番号:ホール6 6H207 * CEATEC内特設サイト:https://www.ceatec.com/nj/exhibitor_detail_ja?id=1915 見どころ:最先端AI技術を体感できる特別展示 1. フォトリアルAIアバター「MotionVox🄬」 テキスト入力だけで、まるで本物の人間のような動画を生成できる革新的なAIアバターシステムです。 MotionVox🄬は自社開発している「Expression Aware🄬」技術により日本人の演者データを基に開発された、

By Qualiteg ニュース
その処理、GPUじゃなくて勝手にCPUで実行されてるかも  ~ONNX RuntimeのcuDNN 警告と対策~

その処理、GPUじゃなくて勝手にCPUで実行されてるかも ~ONNX RuntimeのcuDNN 警告と対策~

こんにちは! 本日は、ONNX RuntimeでGPU推論時の「libcudnn.so.9: cannot open shared object file」エラーの解決方法についての内容となります。 ONNX Runtimeを使用してGPU推論を行う際、CUDAプロバイダの初期化エラーに遭遇することがありますので、このエラーの原因と解決方法を解説いたします。 エラーメッセージの詳細 [E:onnxruntime:Default, provider_bridge_ort.cc:2195 TryGetProviderInfo_CUDA] /onnxruntime_src/onnxruntime/core/session/provider_bridge_ort.cc:1778 onnxruntime::Provider& onnxruntime::ProviderLibrary::Get() [ONNXRuntimeError] : 1 : FAIL : Failed to load

By Qualiteg プロダクト開発部
大企業のAIセキュリティを支える基盤技術 - 今こそ理解するActive Directory 第3回 クライアントとサーバーのドメイン参加

大企業のAIセキュリティを支える基盤技術 - 今こそ理解するActive Directory 第3回 クライアントとサーバーのドメイン参加

こんにちは、今回はシリーズ第3回クライアントとサーバーのドメイン参加について解説いたします! はじめに こんにちは!シリーズ第3回「クライアントとサーバーのドメイン参加」へようこそ。 前回(第2回)では、Active Directoryドメイン環境の構築手順について、ドメインコントローラーのセットアップからDNS設定まで詳しく解説しました。ドメイン環境の「土台」が整ったところで、今回はいよいよ実際にコンピューターをドメインに参加させる手順に進みます。 「ドメインユーザーアカウントを作ったのに、なぜかログインできない」「新しいPCを追加したけど、ドメイン認証が使えない」といった経験はありませんか?実は、Active Directoryの世界では、ユーザーアカウントを作成しただけでは不十分で、そのユーザーが使用するコンピューター自体もドメインに「参加」させる必要があるのです。 本記事では、このドメイン参加について、単なる手順の説明にとどまらず、「なぜドメイン参加が必要なのか」「裏側で何が起きているのか」という本質的な仕組みまで、初心者の方にも分かりやすく解説していきます。Win

By Qualiteg コンサルティング