やじうまの杜

「WSL 2」が今後の主流に? LinuxのGUIアプリも動作可能? ~「WSL」のこれからに注目

「WSL」の有効化もコマンド一発で簡単に。GPUコンピューティングやAIも「WSL」で

 “やじうまの杜”では、ニュース・レビューにこだわらない幅広い話題をお伝えします。

 内容盛りだくさんの「Windows 10 May 2020 Update(バージョン 2004)」が一般公開されましたが、目玉となるのはなんといっても正式機能に昇格した「WSL 2」でしょう。軽量ユーティリティ仮想マシンをベースにアーキテクチャーが一新され、互換性とI/Oパフォーマンスが大きく改善された「WSL 2」ですが、もちろんこれがゴールではありません。今回は公式ブログ“Windows Command Line”の記事をもとに、これからの「WSL」がどうなっていくのかを見てみましょう。

「WSL」の有効化がコマンド一発で簡単に

 現在、「WSL」を有効化するには[Windows の機能の有効化]ダイアログで必要なオプション機能を有効化する必要があります。

「WSL 1」の場合

 [Windows Subsystem for Linux](ビルドによっては[Linux 用 Windows サブシステム]と翻訳されていることも)を有効化する。または、管理者権限の「PowerShell」で以下のコマンドを入力する。

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

「WSL 2」の場合

 [仮想マシン プラットフォーム]を有効化する。または、管理者権限の「PowerShell」で以下のコマンドを入力する。

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

 いずれにせよ面倒で、覚えにくいですよね。今後はこれが改善され、以下のコマンドだけで環境が整うようになる予定です(要管理者権限)。

wsl.exe --install

 この改善は、今後数カ月以内に“Windows Insiders Program”の“Fast”リングでお披露目される予定です。

「WSL」の有効化がコマンド一発で簡単に

「WSL 2」がデフォルトに

 “Microsoft Store”からLinux/WSLディストリビューションをインストールすると、そのディストロは「WSL 1」としてセットアップされます。「WSL 2」にするには、上記の有効化作業ののち、

wsl.exe --set-version Ubuntu 2

などとして、ディストロを「WSL 2」に変換する必要があります(これがまた、ちょっと時間を食う)。以下のコマンドでデフォルトの「WSL」を「WSL 2」にすることも可能ですが、それにしてもひと手間かかることに違いはありません。

wsl.exe --set-default-version 2

 Microsoftによると“Windows Insiders Program”ユーザーの多くは「WSL 1」ではなく「WSL 2」で利用しているとのこと。であれば、「WSL 2」の方をデフォルトにする方が理にかなっているでしょう。

 この変更は“wsl.exe --install”とともに、“Windows Insiders Program”の“Fast”リングでテストされる予定です。

GPUコンピューティングワークフローをサポート

 「WSL 2」では「DirectX」のGPUハードウェアアクセラレーションがサポートされ、「NVIDIA CUDA」などを利用したGPUコンピューティングが可能になります。GPUコンピューティングは気象や地震のシミュレーションのような数値計算に向いており、最近では人工知能(AI)技術への応用も進んでいます。

 この分野ではLinuxが先行しており、「NVIDIA CUDA」を利用したAIツールやモデル、フレームワーク、ライブラリがすでに揃っています。今後数か月以内に“Windows Insiders Program”の“Fast”リングでリリースされる最初のプレビューでは、専門家向けにこの「CUDA」ベースのワークフローをサポートするとともに、初心者や学生を対象に機械学習API「DirectML」を提供するとのこと。また、DirectML」をバックエンドに採用した「TensorFlow」のプレビューパッケージもリリースされる予定です。

 高性能なゲーミングPCが、そのまま機械学習やAIモデルの開発、トレーニング、テストのための環境になっちゃうかも?

いずれはLinux GUIアプリも動作可能に

いずれはLinux GUIアプリも動作可能に

 そして、少し先の話にはなるでしょうが、「WSL 2」でLinux GUIアプリを動かすこともロードマップにはあるようです。これまでも「WSL 1」に無理やり「X410」(Windowsで動作するXサーバー)を組み合わせてGUIアプリを動かすという試みはありましたが、公式にサポートされるというのですから驚きです。

 5月にオンラインで開催された年次カンファレンス“Build 2020”では、実際に画像ビューワー「Eye of GNOME」、テキストエディター「gedit」、メディアプレイヤー「mpv」といったGUIアプリを「WSL 2」から直接実行するデモがお披露目されていました。これらのLinux GUIアプリは「WSL 2」で動作する「Wayland」サーバーに接続し、Windows上のRDPクライアントと通信していたようですが、この仕組みがそのまま採用されるかは不明。詳細は今年のホリデーシーズン(年末)に明らかにされるそうです。