【Windows】リナックスの実行基盤で使用するCPUの芯の数を制限する手順

【Windows】リナックスの実行基盤で使用するCPUの芯の数を制限する手順
🛡️ 超解決

Windows Subsystem for Linux、略してWSLを使用する際、ホストPCの動作が重くなることがあります。

これはWSLがデフォルトで多くのCPUリソースを使用しているためです。

この記事では、WSLが使用するCPUコア数を制限し、Windows 11の快適な動作を維持する具体的な設定手順を解説します。

CPUコア数の設定を調整することで、WSLとWindowsのアプリケーションが安定して動作するようになります。

【要点】WSLのCPUコア数を制限し、Windowsのパフォーマンスを最適化する

  • .wslconfigファイルの作成と編集: WSLのCPUコア数を任意の値に制限できます。
  • WSLのシャットダウンと再起動: 設定変更を即座にWSLに適用できます。
  • CPUコア数の確認: 設定が正しく反映されたかを確認できます。

ADVERTISEMENT

WSLでCPUリソースを制限する目的と概要

Windows Subsystem for Linux、WSLはWindows環境でLinuxを動作させるための仮想化技術です。

特にWSL2は軽量な仮想マシンとして動作し、CPUやメモリなどのシステムリソースを物理PCと共有します。

デフォルト設定では、WSL2はホストPCの多くのCPUコア数を利用しようとします。

この挙動により、WSL上の処理が重い場合や、Windows側で同時に多くのアプリケーションを起動している場合に、PC全体のパフォーマンスが低下することがあります。

CPUコア数を制限する主な目的は、WSLが過剰にリソースを消費するのを防ぎ、WindowsホストOSの安定性と応答性を確保することです。

これにより、WSLとWindowsアプリケーションの両方がスムーズに動作する環境を構築できます。

お探しの解決策が見つからない場合は、こちらの「Windowsトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

WSLのCPUコア数を制限する具体的な手順

WSLのCPUコア数を制限するには、ホームディレクトリに「.wslconfig」という設定ファイルを作成し、編集します。

このファイルはWSL2の起動時に読み込まれ、仮想マシンのリソース割り当てを制御します。

Windows 10でもWindows 11でも手順は同じです。

  1. エクスプローラーでホームディレクトリを開く
    WindowsキーとEキーを同時に押してエクスプローラーを開きます。
    アドレスバーに「%UserProfile%」と入力してEnterキーを押します。
    これにより、ユーザーのホームディレクトリに移動します。
  2. 「.wslconfig」ファイルを作成または開く
    ホームディレクトリ内に「.wslconfig」という名前のファイルがあるか確認します。
    ファイルが存在しない場合は、新しいテキストファイルを作成し「.wslconfig」という名前に変更します。
    ファイル名変更時に拡張子が表示されない場合は、エクスプローラーの「表示」タブから「表示/非表示」グループにある「ファイル名拡張子」にチェックを入れます。
    作成したファイルをメモ帳などのテキストエディターで開きます。
  3. CPUコア数設定を記述する
    開いた「.wslconfig」ファイルに以下の内容を記述または追記します。

    [wsl2]
    processors=2
    

    「processors」の値は、WSLに割り当てるCPUコア数です。
    この例では「2」コアに制限しています。
    ご自身のPCの物理CPUコア数や、WSLで実行する作業の負荷に応じて適切な値を設定してください。
    例えば、8コアのCPUを搭載しているPCでWSLの動作を安定させたい場合は「4」などに設定することが考えられます。

  4. ファイルを保存する
    変更を保存してテキストエディターを閉じます。
  5. WSLをシャットダウンし再起動する
    設定を適用するには、WSLを完全にシャットダウンし、再度起動する必要があります。
    管理者権限でコマンドプロンプトまたはWindows PowerShellを開きます。
    以下のコマンドを実行し、WSLをシャットダウンします。

    wsl --shutdown
    

    その後、WSLを通常通り起動します。
    例えば、スタートメニューからインストール済みのLinuxディストリビューション、例えばUbuntuを起動します。
    これで新しいCPUコア数の設定が適用されます。

設定変更時の注意点と確認方法

WSLのCPUコア数設定を変更する際には、いくつかの注意点と確認方法があります。

正しく設定が適用されているかを確認し、予期せぬ問題を防ぐために重要です。

設定ファイルが存在しない場合の対処法

「.wslconfig」ファイルは通常、ユーザーが手動で作成するものです。

もしファイルが見つからない場合は、手順2に従って新規作成してください。

ファイル名が「.wslconfig.txt」などにならないよう、拡張子まで正確に「.wslconfig」とすることが重要です。

設定が適用されない場合の確認

設定を変更した後、WSLをシャットダウンせずに再起動すると、設定が適用されないことがあります。

必ず「wsl –shutdown」コマンドでWSLを完全に終了させてから、再度Linuxディストリビューションを起動してください。

設定が適用されたかを確認するには、WSLのターミナル内で以下のコマンドを実行します。

cat /proc/cpuinfo | grep processor | wc -l

このコマンドは、WSLが認識している論理プロセッサコア数を表示します。

「.wslconfig」で設定した「processors」の値と一致していれば、設定は正しく適用されています。

「processors」に設定する値は、ご使用のPCのCPUコア数と、WSLで実行する作業内容によって異なります。

物理CPUコア数の半分程度を目安に設定し、その後、WSLとWindowsのパフォーマンスを監視しながら調整することをお勧めします。

あまりにも少ないコア数を設定すると、WSLの動作が極端に遅くなる可能性があります。

ADVERTISEMENT

.wslconfigファイル設定項目とWindows 10との動作の違い

「.wslconfig」ファイルでは、CPUコア数以外にもWSL2仮想マシンの様々なリソース割り当てを設定できます。

これらの設定は、Windows 11とWindows 10のどちらの環境でも同じように機能します。

主な設定項目を以下の表にまとめました。

項目 説明
processors WSL2に割り当てるCPUコア数 processors=4
memory WSL2に割り当てるメモリ量 memory=4GB
swap WSL2に割り当てるスワップファイルサイズ swap=2GB
swapFile スワップファイルのパスとファイル名 swapFile=C:\temp\wsl-swap.vhdx
localhostForwarding WSL2からホストOSへのポート転送を許可するかどうか localhostForwarding=true
autoMemoryReclaim WSL2が使用していないメモリを自動的に解放するかどうか autoMemoryReclaim=true

Windows 10とWindows 11での共通動作

これらの「.wslconfig」ファイルによる設定は、WSL2のコア機能に直接影響を与えるため、Windows 10とWindows 11のどちらのバージョンでも同様に適用されます。

OSのバージョンによる設定方法や効果の違いはありません。

ただし、使用しているWSLのバージョンがWSL2であることを確認してください。

まとめ

この記事では、WSLが使用するCPUコア数を制限する具体的な手順を解説しました。

「.wslconfig」ファイルを適切に設定することで、WSLとWindows 11のパフォーマンスのバランスを保てます。

CPUコア数の制限は、特にリソースを多く消費する開発環境やデータ処理を行うビジネスシーンで有効です。

今回学んだ「processors」設定を基に、必要に応じて「memory」や「swap」などの他のリソース設定も調整してみてください。

これにより、より快適なWSL環境を構築できるでしょう。

💻
Windowsトラブル完全解決データベース 起動不能、更新の不具合、動作が重い、設定の消失など、Windows 10/11のあらゆるトラブル解決手順を網羅しています。

ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。