Appleの新しいM1 Macは、その低消費電力と驚異的なパフォーマンス(Macネイティブアプリ以外でも驚くべきパフォーマンスを発揮)で市場を揺るがしたことは間違いありません。しかし、MacでWindowsを使いたいユーザーは、公式に、そしてネイティブに取り残されてしまいました。
確かに、MacでWindowsを使っている人は、コミュニティの中では明らかに少数派です。私は仕事上の理由(そしてよりシャープで小さなフォントを使うため)でiMacでWindows 10を頻繁に使っていますが、M1 MacがBoot Campに対応していないのは、私にとっては受け入れ難いことでした。この記事のテストでM1の驚異的なパフォーマンスを目の当たりにした後、この状況には全く満足していませんでした。
幸いなことに、状況は決して絶望的ではありません。Appleの仮想マシンソフトウェア開発会社として名高いParallelsのおかげで、Windows 10 for ARMのプレビュー版はM1 Macで驚くほど快適なパフォーマンスで動作します。Boot Camp経由でWindowsをネイティブに実行するのとは全く異なりますが、ネイティブARMアプリであれば悪くないパフォーマンスを発揮します。
残念ながら、Mac版Windowsには多くの「もし」や「もしかしたら」という可能性がつきまといます。まず第一に、MicrosoftがARM版Windows 10(必須OS)をエンドユーザーに提供することに同意する保証はありません。私が質問した参加者のかなり前向きな様子から判断すると、Microsoftは最終的には同意するだろうと推測します。しかし、どうなるかは誰にも分かりません。様々な力が働いているのです。
ARM対ARM
念のため、この件について初めて知ったという方のためにご説明します。AppleのM1は、ARM RISC ISA(Advanced RISC Architecture/Reduced Instruction Set Computing/Instruction Set Architecture)をベースにしたシステムオンチップ(SoC)です。統合型ダイレクトアクセスメモリ、統合GPUコア、そしてH.265ビデオエンコーディングなどの一般的なタスク専用のコアを搭載しているため、極めて高速です。
しかし、最も驚くべき点は、x86/x64 Macアプリを(ネイティブとまではいかないまでも)許容範囲以上の速度で動作させることです。Intel Core i7を搭載した私の2015年製iMacよりも高速です。これはRosetta 2のインストール時間短縮(あるいはリクエストによるもの)によるところが大きいですが、AppleはM1に、私が「スペシャルソース」と呼ぶ巧妙なトリックをいくつか盛り込んでいます。IntelとARMアーキテクチャの主な違いの一つであるx86メモリオーダリングのサポートなどです。
ARMは決して新しいものではありません。ほぼすべての携帯電話、ほとんどのポータブルデバイス、テレビなどに搭載されていますが、ベンダーはARM実装を好きなように名付けることができるライセンスの下で提供されています。Microsoftでさえ、Windows RT(8.1/32ビットARM)から始まり、現在はWindows 10 for ARMと、かなり前からARMをサポートしています。

さまざまな名前で呼ばれていますが (十分な金額を払えば、ARM プロセッサを好きなように呼ぶことができます)、世界中の多くのものが ARM で動作しています。
ARM版Windows 10の完全版は現在OEMのみに提供されており、エンドユーザーは同社のWindows Insider Previewサイトでベータ版を利用するしかありません。ほとんどのソフトウェアは実行できますが(ベータ版なので、一部のx86アプリはクラッシュします)、アクティベーションキーがないとデスクトップの背景などを設定できません。アクティベーションキーを入手する方法が見つからなかったので、私は入手しませんでした。
最新のWindows 10 for ARMベータ版では、既存の32ビットx86エミュレーションに加えてx64が追加されたため、Windows向けに書かれたほぼすべてのアプリケーションを実行できます。ただし、エミュレーションは 非常に遅くなる可能性があります。Microsoftがコードを書き直してAppleの得意とする機能を何らかの形で活用しない限り、AppleのM1プロセッサ上で高負荷のx86/x64 Windowsアプリを許容できるパフォーマンスで実行することは決してできないでしょう。
MicrosoftがM1への最適化を検討しているかどうかについて問い合わせてみたのですが、直接的な回答は得られませんでした。しかし、MicrosoftのAnswerサイトには、M1 MacでWindows 10 for ARMプレビューを実行する方法に関する記事が掲載されています。うーん。
Appleは態度を軟化させてBoot Campを実装するだろうか?この点を含め、いくつか質問してみた。答えは依然として「ノー」で、Appleのセキュリティへの飽くなき追求を考えると、今後もこの姿勢は変わらないだろう。しかし、前述のAnswerの記事を紹介してくれたのは、実はAppleの方だった。これは、M1版Windowsに対する両社からの明確な非敵対的な姿勢が、より一層強く表れていると感じた。
Windows 10 を ARM 向けに M1 で最適化することは、一見するとそれほど突飛なアイデアではない。しかし、シリコンバレーにおける最近の騒動で、M1 の秘密がほぼ漏れてしまったと言えるだろう。
シリコンバレー風の「The Days of Our Lives」
その大物とは、ジェラルド・ウィリアムズ3世という人物で、ごく最近までAppleのARM CPU開発の責任者を務めていました。彼はAppleを離れ、Nuviaという会社を設立し、CPU設計(そう、ご想像の通り)に取り組んでいます。この件をめぐって現在訴訟が起こされています。
でも、待ってください。それだけではありません。本当に衝撃的なのは、ARMベースのチップの大手サプライヤーであるQualcommが、新興企業Nuviaの買収契約を締結したことです。これは痛ましい。もしAppleがこの展開に少しでも動揺しないなら、私の髪を赤く染めて「ハーポ」と呼んでください。
法廷闘争は長期化し、熾烈になるかもしれないが、結局のところ、AppleのM1の魔法は、同社が望んでいたほど長くは秘密でも独占的でもないかもしれない。特許状況がどうなっているかは分からないが、巧みなリバースエンジニアリングはシリコンバレーに豊富に存在するスキルの一つだ。
M1だけでなくx86/x64も処理できる他のARMチップが登場すれば、Microsoftがそれ向けに最適化しないのは、まさに愚行と言えるでしょう。たとえ手法が完全に同じでなくても(おそらく同じでしょうが)、Microsoftは同じアプローチを取るでしょう。そうなると、Appleの得意分野向けの最適化など取るに足らないものになってしまうでしょう。
もしかしたら、Appleが自社のハードウェアでWindowsを再びネイティブに動作させることは悪くないと考えるかもしれません。ただ、先ほど述べたセキュリティ上の課題を考えると、個人的にはその可能性について楽観視していません。
AppleのARMアーキテクチャへの移行によって、Windows 10のARM版にも新たな可能性が開かれ、この問題全体が意味をなさなくなる可能性があります。つまり、より多くのベンダーが自社のアプリをARMに移植するようになるのです。AppleのARMからWindows ARMへの移行は、x86からARMへの移行よりもはるかに簡単です。
これまでずっと考えてきた中で一番突飛なアイデアは、Appleが突然、もう限界だと決めつけて、自社の設計秘密の一部を競合他社に売り飛ばしてしまうこと。あるいは、まさか本物のチップを売ってしまうなんて。いや、それはちょっと考えにくいけど、面白い考えではある。
個人的にはBoot Campについては悲観的ですが、Appleの高度な仮想マシンサポート戦略とMicrosoftの秘策によって、いつかM1 MacでWindows 10のパフォーマンスが許容範囲を超えるようになるのではないかと少し期待しています。x86/x64アプリでも。これはまさに絶好の機会です…
救出への類似点
Parallels Desktop for Mac をご存じない方のために説明すると、Parallels 社が提供する驚くほど統合された仮想マシンソフトウェアです。Mac デスクトップで Windows アプリを実行でき、ファイルやフォルダが両方のデスクトップ間で自動同期されるなど、様々な統合機能により、Mac 向けの VMWare や VirtualBox などの類似製品よりも数段優れています。ただし、この記事の執筆時点では、VMware や VirtualBox はどちらも M1 Mac では動作しません。

この画像は、Parallelsソフトウェアが提供する驚異的なレベルの統合性を示しています。これはWindows 10 for ARMデスクトップ上で動作するMicrosoft Excel x86/64です。そして、そう、macOSのドックとメニューがポップアップ表示されています。
Parallels Desktop for M1 Mac のテクニカル プレビューには、ARM バージョンの Windows 10 が必要です。同様に実行できる Linux の ARM バージョンは多数ありますが、この記事を読んでいるのはそのためではないですよね?
テストの最初のステップは、ARM版Windows 10のベータ版をダウンロードし、次にParallelsのM1対応版(IntelベースのParallels Desktop for Macではありません)をダウンロードすることでした。私は既にWindows Insiderユーザーでしたが、誰でもサインアップできます。プレビュー版をダウンロードするには、Parallelsのアカウントを作成する必要があります。
インストール全体はあっという間でした。MicrosoftからダウンロードしたWindows 10 for ARMが入った仮想拡張ハードドライブのファイルをソフトウェアに指定するだけで、あとはクリックするだけです。

2020 M1 Mac Mini 上の Parallels でフルスクリーンで実行されている Windows 10 for ARM。
基本的なI/O、ハードドライブへのアクセス、ファイルのコピーなど、ほぼすべての動作が十分に高速です。起動時間は約10秒で、2つのOSの切り替えも瞬時に行えます。Geekbenchも実行しましたが、これはM1チップのコアが高速であることを示すだけのものです。ただし、多くのx86/x64コアは2スレッドを処理できるのに対し、M1コアは1スレッドしか処理できないため、この結果は誤解を招く可能性があります。いずれにせよ、私の手元では、M1はネイティブアプリで驚くほど高速でした。

はい、Geekbench を実行しましたが、M1 には非常に高速な CPU コアがあるということだけがわかります。
ベータ版の仮想マシンでベータ版OSを使っていることを繰り返し思い出させられるのは、主にグラフィック関連です。起動時に回転する星の輪、本来あるべきほど軽快ではないメニュー、そしてウィンドウをドラッグすると、昔(数十年前)に発生していたようなカクツキやジャダーが見られます。ウィンドウをドラッグした時に輪郭しか見えなかった時代を覚えていますか?
私が通常実行していたのは、ディスプレイのフル解像度 3840×2160、メモリが 8GB しかない Mac mini で、CPU コアを 2 つだけ仮想マシン専用にしていたということに留意してください。
また、これはM1 Mac向けのParallels Desktopの正式なリリース版とは言えません。Appleは同社と緊密に連携しており、開発者は大幅なパフォーマンス向上に非常に楽観的だと話していました。遅延は主にグラフィック関連の問題だったので、より成熟したグラフィックドライバーを導入すれば、私が悩まされていた問題の一部、あるいは全てが解消される可能性は十分にあります。

Parallels 内で Windows 10 上で動作する x64 Ableton Live 10。動作はしますが、Mac 版を使った方が断然良いでしょう。
WindowsのネイティブARMアプリも、まずまずのパフォーマンスを発揮しています。残念ながら、x86/x64から移植されていないアプリが山ほどあり、それらは明らかに動作が重くなっているように見えます。それでも、私のメインの音楽制作アプリであるAbleton Live (x86/x64) がクラッシュすることなく起動したのは嬉しかったです。アニメーションはぎこちなく、実用には物足りないものの、とにかく動作するのは驚きです。

Parallels 16 テクニカル プレビュー上の Window で実行されている Windows 10 for ARM。
Parallels のソフトウェアを使用した Windows 10 for ARM は、現在、軽量の x86/x64 アプリであれば小規模から中規模の環境であれば問題なく動作します。ネイティブ ARM アプリであれば、より大規模な環境でも動作するかもしれません。CPU 負荷の高い x86/x64 アプリを実行したい場合は、Apple の特別な機能がサポートされるまでは、Windows 10 for ARM をお勧めしません。代わりに、Windows 10 for ARM または macOS の同等の環境、あるいは移植版を探してください。
QEMU
M1上でARM版Windows 10を実行できる仮想マシンホストがもう1つあります。QEMUです。主なメリットは、無料でオープンソースであることです。主なデメリットは、インストール、設定、そしてターミナルのコマンドプロンプトから実行する必要があることです。また、私の限られたテストでは、Windows 10 ARMは800×600の画面解像度でしか動作せず、ドライバーも大幅に不足していました。パフォーマンスは驚くほど良好でしたが、長時間使用したいほどではありません。

M1 Mini と Big Sur 11.1 で Windows 10 を実行している QEMU。 利用可能な解像度は 800 x 600 のみでした。
私は無料オープンソースの大ファンですが、現時点では、ARM版Windows 10ネイティブアプリをたまに実行するくらいでなければ、Parallelsの方が断然良い選択肢です。99ドルでも。
未来は…明るい?
M1 MacでWindows 10を最高速度で実行できる、本格的なBoot Camp体験をお探しなら、残念ながら残念ながら実現できません。十分な速度(あるいはそれ以上)の仮想マシンパフォーマンスがあれば、Mac版Windowsユーザーの大多数にとって、この点はほぼ意味をなさなくなるでしょう。ARM版Windows 10の製品版が利用可能になったと仮定した場合ですが。
とはいえ、ARMアプリの増加、あるいはMicrosoftがx86/x64の特殊な技術に着目するなど、いずれM1 MacでWindows 10のネイティブに近いパフォーマンスを体験できるようになるかもしれません。どうなるか楽しみです。私も注目しています。
Parallels が M1 用のソフトウェアの最終バージョンを出荷したら、更新を確認してください。
注:私がテストした Parallels の出荷バージョンとベータ バージョンのパフォーマンスには、顕著な違いはありません。
追記:この記事によると、MicrosoftとQualcommの間でARMとWindowsに関する独占契約が間もなく終了する可能性があるとのことです。これによりM1でBoot Campが使用できるようになる可能性はありますが、Microsoftがエミュレーションを廃止し、AppleのRosetta 2テクノロジーを採用しない限り、x86のパフォーマンス問題は解決されないでしょう。