OllamaをWSL2で使うか、Windowsでネイティブに使うか:どちらを選ぶべきか ?
Windowsでは、Ollamaを動かす方法として、ネイティブの.exeインストーラーを使う方法と、WSL2内のLinuxにインストールする方法の2つがあります。OllamaをWSL2とWindowsネイティブのどちらで使うかは、単なる好みの問題ではありません。GPU性能、ファイルへのアクセス、AMDへの対応にも関わります。このガイドでは、具体的な数値と利用例に基づいてどちらを選ぶべきかを判断し、最初から適切な構成を選べるようにします。
#課題:同一マシンでの2つの Ollama
OllamaがWindows用のネイティブインストーラーを提供するようになって以来、「OllamaはWSL2とネイティブのどちらで使うべきか?」という疑問が繰り返し持ち上がっています。どちらの方法でも、まったく同じデーモンが動作し、デフォルトではhttp://localhost:11434でリクエストを待ち受け、同じGGUFモデルを提供します。違いは別のところにあります。GPUを利用できるようにする仕組み、ファイルの保存場所、そして周辺で使うツールのエコシステムです。
まとめると、Windowsネイティブ環境はインストールの手軽さとデスクトップとの統合に優れ、WSL2はLinux・開発ワークフローとの一貫性と、Unixでしか利用できないツールとの互換性に優れています。どちらも絶対的に「優れている」わけではありません。適切な選択は、LLMを何に使うかによって決まります。
- Windows ネイティブ版 Ollama
- .exeファイルで利用でき、システムトレイにアイコンが表示され、Windowsの起動と同時にデーモンが起動します。Linuxレイヤーを管理する必要はありません。
- WSL2上のOllama
- Linuxディストリビューション(多くの場合はUbuntu)に、サーバーの場合と同じようにOllamaをインストールします。すでにLinuxベースの環境を使っている場合に最適です。
- 共通点
- 同じAPIをポート11434で使用し、同じモデルや同じコマンドが利用可能です。実際には、WindowsのクライアントとWSL2のサーバーを互いに通信させることもできます。
#前提条件
お使いのマシンで、プライベートかつ無料のChatGPTを1時間で構築 — LM Studio、Ollama、Open WebUI、ご自身のドキュメント、クラウド不要。
- 永久に利用できるオンラインスペース
- PDF + ファイル
- 30日間返金対応
両者を公平に比較するには、それぞれの環境でGPUが適切にサポートされている必要があります。期待外れになる原因の大半は、この点にあります。
- Windows 11(または比較的新しいWindows 10)
- GPU アクセラレーション(WSLg)を利用する WSL2 には、Windows 11、または更新を適用した比較的新しい Windows 10 ビルドが必要です。
- Windows側のGPUドライバーを最新にする
- WSL2では、Windowsのドライバが/dev/dxgを介してGPUをLinuxから利用できるようにします。最新版のNVIDIAドライバ(Game ReadyまたはStudio)またはAMD Adrenalinドライバをインストールしてください。ディストリビューション内にLinux用ドライバをインストールしてはいけません。
- WSL2が有効化されています
- 管理者権限で起動した PowerShell から「wsl --install」を実行すると、WSL2 と、デフォルトのディストリビューションである Ubuntu がインストールされます。
- 十分なVRAM
- Q4_K_Mの基準は両方の環境で同じです:7B ≈ 5GB、14B ≈ 9GB、32B ≈ 19GB、70B ≈ 40GB。WSL2はこれらの要件を変えることはありません。
#WSL2にOllamaを適切にインストールする
WSL2でのインストールは、Linuxサーバーでのインストールと同じです。公式スクリプトがWSLg経由で利用可能なGPUを検出し、アクセラレーションを自動的に設定します。
- 01WSL2を有効にする管理者権限のPowerShellで「wsl --install」を実行してください。再起動を求められた場合は再起動してください。その後、「wsl -l -v」で、お使いのディストリビューションがVERSION 2になっていることを確認してください。
- 02ディストリビューションを更新するUbuntuを開き、「sudo apt update && sudo apt upgrade -y」を実行してください。ディストリビューションを最新の状態に保つことで、GPUランタイムに関する予期しないトラブルを避けられます。
- 03Ollama のインストール公式スクリプトを実行してください:「curl -fsSL https://ollama.com/install.sh | sh」。これはNVIDIA(WSLg経由のCUDA)またはAMD(ROCm)を検出し、ログに通知します。
- 04GPUを確認する小さなモデルをロードしてから「ollama ps」を実行してください。PROCESSOR列がGPUを示している必要があります。CPUを示している場合は、アクセラレーションが有効になっていません。
- 05モデルをテストする「ollama run qwen3.5:9b」を実行してから、質問してください。この2026年のモデル(Q4で6.6GB、256kのコンテキスト、画像認識対応)は、8GBのグラフィックカードでの標準的な選択肢です。実際のトークン/秒を確認するには、--verboseを追加してください。
#GPUパフォーマンス:ネイティブ対WSL2、実測データに基づく
このガイドを書くきっかけになったのは、まさにこの疑問です。幸い、NVIDIA製GPUでLLMの推論を行う場合、ネイティブ環境のOllamaとWSL2環境のOllamaとの差は小さいです。モデルをVRAMに読み込んだ後は、どちらもGPUで計算するため、トークン生成そのものにWSL2が加えるオーバーヘッドはほとんどありません。
実際には、同じカード(例えばRTX 4070 12GBで8BモデルをQ4_K_Mで使用)では、生成速度はほぼ同じです。差は通常数パーセント程度に収まり、測定のばらつきに埋もれることもよくあります。WSL2で多少時間がかかる可能性があるのは、ディスクからモデルを最初に読み込むときです。WSL2のファイルシステムはext4の仮想ディスク上では高速ですが、Windows側に保存されたファイルへのアクセス(/mnt/c経由)は大幅に遅くなります。
- トークン生成(GPU)
- NVIDIA におけるネイティブ環境と WSL2 のパフォーマンスはほぼ同一です。どちらの場合も GPU が処理を行います。WSL2 のレイヤーは計算に対して透過的です。
- モデルの読み込み
- モデルが WSL2 のネイティブな Linux ファイルシステム内に保存されていれば高速です。Ollama が /mnt/c/... からモデルのブロブを読み込む場合は、Windows 側への橋渡しを経由するため低速です。
- 最初のトークンが出るまでの遅延
- モデルがすでにVRAMにキャッシュされている場合は同程度です。注意が必要なのは、キャッシュのない状態での初回読み込みです。
- CPUのオーバーヘッド
- 推論への影響はごくわずかです。WSL2 はエミュレーションではなく、実際の軽量な仮想マシンです。GPU を使うワークロードでは、仮想化のオーバーヘッドは表面化しません。
純粋なパフォーマンスに関する結論:NVIDIA カードをお持ちの場合、ネイティブとWSL2の選択は生成速度では決まりません。ワークフローに基づいて選択してください。パフォーマンスが再び論点となるのは2つの場合のみです:モデルのストレージ(WSL2ではLinux側に保持)と、次に述べるAMDのサポートです。
#AMDの場合:WSL2上でROCmの使用
AMD GPUでは事情が異なり、もう少し複雑です。OllamaはROCmを使って、対応するRadeonで処理を高速化します。ただし、Windows上のROCmは長らく問題に遭遇しやすい環境でした。WSL2によって状況は変わりましたが、使用するカードによっては、その変化が必ずしも有利に働くとは限りません。
- Windows でのネイティブ対応(AMD)
- OllamaにはWindows用のROCmライブラリが組み込まれています。公式にサポートされているカード(最近のRX 7000シリーズ、一部のRX 6000シリーズ)では、WSL2なしでアクセラレーションが機能します。AMDのデスクトップPCでは、これが最も簡単な方法になることが多いです。
- WSL2環境でのAMD
- ROCmはWSL2でも利用できますが、対応GPUの範囲はより限られており、セットアップもより難しくなります。Linux用のツールを使いたい場合には必要になることがありますが、それ自体で処理が速くなるわけではありません。
- サポートされていないカード
- 古いRadeonやAPUの多くは、ROCmの公式対応リストに含まれていません。これらでは、どちらの環境でもOllamaがCPUでの実行に切り替わる可能性があります。
- HSA関連の回避策
- 変数HSA_OVERRIDE_GFX_VERSIONを使うと、サポート対象のモデルに近いGPUを強制的に認識させられる場合があります。十分な知識のあるユーザー向けの方法で、動作の保証はありません。
#ファイルアクセスとVS Codeの統合
性能だけでなく、ファイルへのアクセスが選択の決め手になることもよくあります。2つのファイルシステム(WindowsのNTFSとWSL2のLinux ext4)は互いにアクセスできますが、両者をまたぐアクセスには性能上の負担があり、パスの表記規則も異なります。
- WSL2からWindowsへ
- Windowsのディスクは/mnt/c、/mnt/dなどにマウントされています。文書フォルダの読み取りには便利ですが、大きなモデルの読み込みやRAGのインデックス作成など、集中的なディスクアクセスには時間がかかります。
- Windows から WSL2 へ
- Linuxのファイルシステムには、エクスプローラーからネットワークパス \\wsl$\Ubuntu\ を使ってアクセスできます。ファイルを置くには便利ですが、この場所でWindowsのツールを使って集中的に処理を行うのは避けてください。
- 黄金のルール
- 各作業に使うファイルは、それぞれの環境のネイティブなファイルシステムに置いてください。Linux 向けの開発プロジェクト → WSL2 内。オフィス文書 → Windows 側。これにより、遅い環境間の橋渡しを避けられます。
VS CodeはWSLとの統合に優れており、開発用途ではWSL2を選ぶ大きな理由になります。公式拡張機能「WSL」を使うと、プロジェクトをLinuxディストリビューション内で直接開けます。VS CodeサーバーはLinux側で動作し、統合ターミナルはLinuxシェルとなり、Ollama APIを呼び出すコードもデーモンと同じ環境で実行されます。
#用途に応じた推奨構成は?
以下に、選択に役立つ要点をまとめます。トークン/秒のわずかな差よりも、ご自身の主な利用スタイルに合わせて選んでください。
- デスクトップ向け/一般ユーザー向け (NVIDIA)
- Windowsネイティブ版Ollama。ワンクリックでインストールでき、ログイン時に起動します。Linux環境を別途維持する必要はありません。インターフェースとしてLM StudioやOpen WebUIを使う構成に最適です。
- Linux開発者 / Unixスタック
- WSL2上でOllamaを動かします。普段使っているツール(bashスクリプト、Docker、Python venv)をデーモンと同じ環境で利用でき、VS Codeとの連携も非常に優れています。
- AMDの一般消費者向けGPU
- まずはWindowsネイティブ版を試してください。同梱のROCmを利用できるため、動作させるにはこれが最も簡単なことが多いです。WSL2への移行は、ワークフロー上で必要であり、かつお使いのGPUがサポートされている場合に限ってください。
- サーバー/ネットワーク共有
- WSL2は一般的なLinuxサーバーへのデプロイに近い環境で、再現性を確保しやすくなります(本番環境と同じコマンドを使えます)。ネットワーク経由で利用できるようにするには、OLLAMA_HOSTの設定を忘れないでください。
#トラブルシューティング
- 「ollama ps」はGPUではなくCPUを表示します。
- WSL2で「nvidia-smi」が応答するか確認してください。応答しない場合は、Windows側のドライバーを更新し、Linux側のドライバーはディストリビューションにインストールしないでください。
- モデルのロードが非常に遅い
- モデルはおそらく/mnt/c配下に保存されています。速度を回復するために、Linuxのファイルシステム(~/.ollama)に移動してください。
- ポート 11434 で「address already in use」
- ネイティブの Ollama と WSL2 の Ollama が同時に実行されています。片方を停止するか、OLLAMA_HOST=127.0.0.1:11435 を使用してもう片方のポートを変更してください。
- AMD GPUは無視されます
- GPUカードがROCmの対応リストに載っていません。互換性を確認し、必要に応じてHSA_OVERRIDE_GFX_VERSIONを試すか、Windowsネイティブ環境に切り替えてください。
- WindowsクライアントからWSL2のデーモンに接続できない
- http://localhost:11434 を使用してください(WSL2 のリダイレクトがブリッジを処理します)。また、このポートでデーモンが一つだけリスニングしていることを確認してください。
#さらに詳しく
利用する環境が決まったら、以下のガイドを参考にして、その環境を最大限に活用できます。
- Windows 11 に Ollama をインストールする
- Windowsネイティブ版を選ぶ場合に、この比較を補完する、ネイティブインストーラーの手順ガイドです。
- Ollamaのトラブルシューティング:GPU未検出、遅延、メモリエラー
- GPUの不具合への対処をさらに詳しく解説しています。ネイティブ環境でもWSL2環境でも役立ちます。
- 量子化の選択(Q4、Q5、Q8、FP16)
- 実行環境にかかわらず、お使いのカードに合わせてVRAM使用量を調整するために。
ご意見、誤りのご指摘、補足はありますか?ぜひお知らせください。皆さんにとってより良いガイドにするために役立ちます。