Nvidia
Ollamaは、コンピュート能力5.0以上、ドライバーバージョン550以降のNvidia GPUをサポートしています。 コンピュート能力5.0から6.2のNvidia GPUには、ドライバーバージョン570以降が必要です。
互換性を確認して、お使いのカードがサポートされているか確認してください: https://developer.nvidia.com/cuda-gpus
| Compute Capability | Family | Cards |
|---|---|---|
| 12.1 | NVIDIA | GB10 (DGX Spark) |
| 12.0 | GeForce RTX 50xx | RTX 5060 RTX 5060 Ti RTX 5070 RTX 5070 Ti RTX 5080 RTX 5090 |
| NVIDIA Professional | RTX PRO 4000 Blackwell RTX PRO 4500 Blackwell RTX PRO 5000 Blackwell RTX PRO 6000 Blackwell | |
| 9.0 | NVIDIA | H200 H100 |
| 8.9 | GeForce RTX 40xx | RTX 4090 RTX 4080 SUPER RTX 4080 RTX 4070 Ti SUPER RTX 4070 Ti RTX 4070 SUPER RTX 4070 RTX 4060 Ti RTX 4060 |
| NVIDIA Professional | L4 L40 RTX 6000 | |
| 8.6 | GeForce RTX 30xx | RTX 3090 Ti RTX 3090 RTX 3080 Ti RTX 3080 RTX 3070 Ti RTX 3070 RTX 3060 Ti RTX 3060 RTX 3050 Ti RTX 3050 |
| NVIDIA Professional | A40 RTX A6000 RTX A5000 RTX A4000 RTX A3000 RTX A2000 A10 A16 A2 | |
| 8.0 | NVIDIA | A100 A30 |
| 7.5 | GeForce GTX/RTX | GTX 1650 Ti TITAN RTX RTX 2080 Ti RTX 2080 RTX 2070 RTX 2060 |
| NVIDIA Professional | T4 RTX 5000 RTX 4000 RTX 3000 T2000 T1200 T1000 T600 T500 | |
| Quadro | RTX 8000 RTX 6000 RTX 5000 RTX 4000 | |
| 7.0 | NVIDIA | TITAN V V100 Quadro GV100 |
| 6.1 | NVIDIA TITAN | TITAN Xp TITAN X |
| GeForce GTX | GTX 1080 Ti GTX 1080 GTX 1070 Ti GTX 1070 GTX 1060 GTX 1050 Ti GTX 1050 | |
| Quadro | P6000 P5200 P4200 P3200 P5000 P4000 P3000 P2200 P2000 P1000 P620 P600 P500 P520 | |
| Tesla | P40 P4 | |
| 6.0 | NVIDIA | Tesla P100 Quadro GP100 |
| 5.2 | GeForce GTX | GTX TITAN X GTX 980 Ti GTX 980 GTX 970 GTX 960 GTX 950 |
| Quadro | M6000 24GB M6000 M5000 M5500M M4000 M2200 M2000 M620 | |
| Tesla | M60 M40 | |
| 5.0 | GeForce GTX | GTX 750 Ti GTX 750 NVS 810 |
| Quadro | K2200 K1200 K620 M1200 M520 M5000M M4000M M3000M M2000M M1000M K620M M600M M500M |
古いGPUをローカルでビルドしてサポートする場合は、developerを参照してください。
GPU選択
システムに複数のNVIDIA GPUがあり、Ollamaの使用をサブセットに制限したい場合は、CUDA_VISIBLE_DEVICESをカンマ区切りのGPUリストに設定できます。 数値IDを使用できますが、順序は異なる場合があるため、UUIDの方がより信頼性が高いです。 nvidia-smi -Lを実行してGPUのUUIDを確認できます。GPUを無視してCPU使用を強制する場合は、無効なGPU ID(例:"-1")を使用してください。
Linuxサスペンド/レジューム
Linuxでは、サスペンド/レジュームサイクル後、OllamaがNVIDIA GPUを検出できず、CPUでの実行にフォールバックすることがあります。 sudo rmmod nvidia_uvm && sudo modprobe nvidia_uvmでNVIDIA UVMドライバーをリロードすることで、このドライバーバグを回避できます。
AMD Radeon
Ollamaは、ROCmライブラリを介して以下のAMD GPUをサポートしています:
注意: 追加のAMD GPUサポートはVulkanライブラリによって提供されます - 以下を参照してください。
Linuxサポート
OllamaにはLinux上でAMD ROCm v7ドライバーが必要です。 AMDのROCmドキュメントからamdgpu-installユーティリティを使用して、インストールまたはアップグレードできます。
| Family | Cards and accelerators |
|---|---|
| AMD Radeon RX | 9070 XT 9070 GRE 9070 9060 XT 9060 XT LP 9060 7900 XTX 7900 XT 7900 GRE 7800 XT 7700 XT 7700 7600 XT 7600 6950 XT 6900 XTX 6900XT 6800 XT 6800 |
| AMD Radeon AI PRO | R9700 R9600D |
| AMD Radeon PRO | W7900 W7800 W7700 W7600 W7500 W6900X W6800X Duo W6800X W6800 V620 |
| AMD Ryzen AI | Ryzen AI Max+ 395 Ryzen AI Max 390 Ryzen AI Max 385 Ryzen AI 9 HX 475 Ryzen AI 9 HX 470 Ryzen AI 9 465 Ryzen AI 9 HX 375 Ryzen AI 9 HX 370 Ryzen AI 9 365 |
| AMD Instinct | MI350X MI300X MI300A MI250X MI250 MI210 MI100 |
Windowsサポート
Ollamaには、Windows上でAMD ROCm v7 / HIP7対応ドライバースタックが必要です。
| Family | Cards and accelerators |
|---|---|
| AMD Radeon RX | 7900 XTX 7900 XT 7900 GRE 7800 XT 7700 XT 7600 XT 7600 |
| AMD Radeon PRO | W7900 W7800 W7700 W7600 W7500 |
Linuxでのオーバーライド
OllamaはAMD ROCmライブラリを利用していますが、このライブラリはすべてのAMD GPUをサポートしているわけではありません。 場合によっては、類似のLLVMターゲットの使用を強制できます。例えば、Radeon RX 5400はgfx1034(別名10.3.4)ですが、ROCmは現在このターゲットをサポートしていません。最も近いサポートはgfx1030です。環境変数HSA_OVERRIDE_GFX_VERSIONをx.y.z構文で使用できます。例えば、RX 5400での実行を強制するには、サーバーの環境変数としてHSA_OVERRIDE_GFX_VERSION="10.3.0"を設定します。サポートされていないAMD GPUをお持ちの場合は、以下のサポート対象タイプのリストを使用して実験できます。
異なるGFXバージョンの複数のGPUがある場合は、環境変数に数値デバイス番号を追加して個別に設定できます。例えば、HSA_OVERRIDE_GFX_VERSION_0=10.3.0とHSA_OVERRIDE_GFX_VERSION_1=11.0.0
現在のところ、Linuxでサポートされている既知のGPUタイプは以下のLLVMターゲットです。このテーブルは、これらのLLVMターゲットに対応する例示的なGPUを示しています:
| LLVM Target | An Example GPU |
|---|---|
| gfx908 | Radeon Instinct MI100 |
| gfx90a | Radeon Instinct MI210/MI250 |
| gfx942 | Radeon Instinct MI300X/MI300A |
| gfx950 | Radeon Instinct MI350X |
| gfx1030 | Radeon PRO V620 |
| gfx1100 | Radeon PRO W7900 |
| gfx1101 | Radeon PRO W7700 |
| gfx1102 | Radeon RX 7600 |
| gfx1150 | Ryzen AI 9 HX 375 |
| gfx1151 | Ryzen AI Max+ 395 |
| gfx1200 | Radeon RX 9070 |
| gfx1201 | Radeon RX 9070 XT |
追加のサポートについては、Discordに連絡するか、issueを報告してください。
GPU選択
システムに複数のAMD GPUがあり、Ollamaの使用をサブセットに制限したい場合は、ROCR_VISIBLE_DEVICESをカンマ区切りのGPUリストに設定できます。rocminfoでデバイスのリストを確認できます。GPUを無視してCPU使用を強制する場合は、無効なGPU ID(例:"-1")を使用してください。可能な場合は、数値の代わりにUuidを使用してデバイスを一意に識別してください。
コンテナ権限
一部のLinuxディストリビューションでは、SELinuxがコンテナがAMD GPUデバイスにアクセスすることを妨げる場合があります。ホストシステムでsudo setsebool container_use_devices=1を実行して、コンテナがデバイスを使用できるように許可できます。
Metal (Apple GPUs)
Ollamaは、Metal APIを介してAppleデバイスでのGPUアクセラレーションをサポートしています。
Vulkan GPUサポート
WindowsおよびLinuxでの追加のGPUサポートは、Vulkanを介して提供されます。Vulkanはバックエンドがインストールされている場合、デフォルトで有効になっています。Windowsでは、ほとんどのGPUベンダーのドライバーにVulkanサポートがバンドルされており、追加のセットアップ手順は不要です。ほとんどのLinuxディストリビューションでは追加コンポーネントのインストールが必要であり、MesaとGPUベンダー固有のパッケージの間でVulkanドライバーの複数の選択肢がある場合があります。
- Linux Intel GPU手順 - https://dgpu-docs.intel.com/driver/client/overview.html
- Linux AMD GPU手順 - https://amdgpu-install.readthedocs.io/en/latest/install-script.html#specifying-a-vulkan-implementation
一部のLinuxディストリビューションではAMD GPUに対して、ollamaユーザーをrenderグループに追加する必要がある場合があります。
Ollamaスケジューラーは、GPUライブラリによって報告される利用可能なVRAMデータを活用して、最適なスケジューリング決定を行います。Vulkanは、この利用可能なVRAMデータを公開するために追加の機能またはrootでの実行が必要です。rootアクセスまたはこの機能のいずれも付与されない場合、Ollamaはモデルの概算サイズを使用して、最善のスケジューリング決定を行います。
bash
sudo setcap cap_perfmon+ep /usr/local/bin/ollamaGPU選択
特定のVulkan GPUを選択するには、FAQで説明されているように、Ollamaサーバー上で環境変数GGML_VK_VISIBLE_DEVICESを1つ以上の数値IDに設定できます。VulkanベースのGPUで問題が発生した場合は、OLLAMA_VULKAN=0またはGGML_VK_VISIBLE_DEVICES=-1を設定することで、すべてのVulkan GPUを無効にできます。
Vulkan iGPUが不安定なiGPU/dGPU混在システムでは、Vulkanを有効にしたまま、GGML_VK_VISIBLE_DEVICESをディスクリートGPUのインデックスに設定してください。例えば、Vulkan1がディスクリートGPUの場合は、GGML_VK_VISIBLE_DEVICES=1を使用してください。