Microsoft の Windows Dev Kit 2023 AKA Project Volterra: 開発者レビュー

画像:itchaznong/Adobe Stock

Microsoft がついに Surface Pro 9 タブレット用の Arm オプションを備えた Arm Windows バージョンを利用できるようにしたことで、長引く疑問があります: すべての Arm アプリケーションはどこから来るのでしょうか? Microsoft は、以前は Project Volterra として知られていた Windows Dev Kit 2023 で、軽量で比較的安価でありながら強力で柔軟なハードウェアの答えを生み出しました。

ジャンプ先:

Windows Dev Kit 2023 は、他のハードウェアでは管理できない Arm ワークロードを管理します

開発キット 2023 仕様。
開発キット 2023 仕様。

Windows Dev Kit 2023 は、Qualcomm の 8cx Gen 3 Arm チップセットをベースにした比較的低コストの Arm ベースの開発者用 PC です。 Microsoft Store から 599 ドルで購入できます。これは、新しい Arm ベースの Surface Pro 9 5G の約 3 分の 1 です。

回収された海洋プラスチックから部分的に作られた小さな黒いケースに組み込まれた Windows Dev Kit には、次のものが含まれています。

  • 32 GB のメモリと 512 GB の高速 NVMe ストレージ、ほとんどの開発者用ラップトップと同様の仕様
  • ビデオ出力用の 2 つの USB-C ポートと 1 つの mini DisplayPort 接続
  • ほとんどの一般的なデバイスに接続する 3 つの USB-A ポート
  • ギガビット イーサネット ポートと Wi-Fi 6

追加する必要があるのは、画面とキーボードとマウスだけです。

低価格なので、Arm以降に役立ちます

その低コストは、Windows Dev Kit 2023 の最も魅力的な機能の 1 つです。ハイエンドの開発者用 PC のコストで 3 つまたは 4 つ購入できます。 Windows アプリケーションをアームするか、より多くの開発者にツールを提供します。

Azure Pipelines などの継続的インテグレーションおよび継続的デプロイ ツールを使用すると、Arm 開発に限定されません。 これらのツールを使用すると、クラウド ビルド ツールを使用して x86 および x64 を操作したり、共有 Mac を使用して iOS および macOS コードをビルドしたりすることもできます。

複数の画面を駆動する機能により、Microsoft のクラウド ホスト型 Dev Box との興味深いクロスオーバーの可能性があり、必要なときに追加の電力を得ることができます. Microsoft のリモート デスクトップ機能もサポートされているため、Windows Dev Kit デバイスをヘッドレス モードで起動し、通常の PC またはラップトップからアクセスして、Windows Arm アプリケーションをビルドまたはテストする必要があるときにログインできます。

参照: 採用キット: バックエンド開発者 (TechRepublic Premium)

Windows 11 Pro と Office 365 のコピーがすぐに入手でき、既存の Microsoft 365 アカウントですぐに使用できます。 基本的なセットアップ手順のリンクをクリックすると、Microsoft の Web サイトのより詳細な情報に移動できます。この Web サイトには、Microsoft の主要な開発ツールの Arm バージョンへのリンクと、Qualcomm の開発者向けコンテンツおよびニューラル プロセッシング ユニット人工知能アクセラレーターで使用するツールへのリンクも含まれています。

Surface Pro 9 を Arm 開発に使用できないのはなぜですか?

Windows 11 の Windows on Arm バージョンは、32 ビットと 64 ビットの両方の Intel プロセッサをエミュレートできますが、エミュレーションには大きなオーバーヘッドが伴います。 Surface Pro 9 5G の 8GB バージョンを購入すると、Windows のジャストインタイム エミュレーション テクノロジが Intel コードを Arm コードに変換し、次に呼び出されたときにキャッシュするため、アプリケーションが遅くなる可能性があります。

Microsoft はツールの提供に取り組んできたので、開発者は Arm 用のコードのネイティブ バージョンをビルドできます。 Windows RT 向けに行われ、最新の Arm プロセッサ向けに最適化された作業に基づいて構築されているため、Visual Studio や Visual Studio Code などの使い慣れたツールを使用して、C# や C++ などの使い慣れた言語から Arm に直接コンパイルできます。

Microsoft は、すべての Windows アプリケーション プログラミング インターフェイスとソフトウェア開発キットの Arm バージョンを提供しているため、新しいことを学ぶ必要はありません。 さらに、NuGet には多くの人気のあるライブラリが既に新しいプロセッサ アーキテクチャへの移行を行っており、熱狂的な Arm Windows コミュニティは、必要な変更を行っていないライブラリの更新を推進しています。

Arm 用のコードのコンパイルは、Microsoft のビルド ツールで Arm64 をターゲットにするのと同じくらい簡単になるはずです。 Azure の Ampere Altera インスタンスを使用して、Azure の Windows 11 Arm 仮想マシンを介してコンパイラとテスト スイートをホストすることもできますが、ほとんどの開発者は、もう少し自宅に近いものを好みます。 さらに、Surface Pro X または Pro 9 を Arm 開発用 PC として使用することもできますが、薄くて軽い常時接続モバイル デバイスは、完全な開発者ツールチェーンを実行するのではなく、コードの編集に適しています。

Visual Studio での Arm コードのビルド

Dev Kit 2023 の Visual Studio の最新の Arm ネイティブ プレビュー。
Dev Kit 2023 の Visual Studio の最新の Arm ネイティブ プレビュー。

おそらく、Microsoft の成功を判断する最良の方法は、コードをビルドして実行することです。 .NET 7 の現在のビルドは最終版に近いため、Visual Studio の最新の Arm ネイティブ プレビューを使用して、単純なコンソール アプリケーションをビルドおよびコンパイルしました。

x64 Intel Xeon-E ワークステーションでの作業と Arm ベースの Dev Kit での作業に違いはありませんでした。 C# プロジェクトを作成すると同じファイルがセットアップされ、コードをコンパイルすると、両方のマシンで同じ出力が得られました。 両方のデバイスが同じ結果を提供し、ネイティブ コードを実行しているため、C++ を使用して金属に近いところで同じ結果が得られました。

Windows Arm API と SDK は Intel ハードウェアと同じである必要があります。 マイクロソフトは、Arm を Windows エコシステムの有効な一部として確立し、開発者が 1 つのプラットフォームに他のプラットフォームと同じように簡単に提供できるようにするために、これを正しく行う必要があります。 すでに独自のコードの Arm バージョンを構築しており、かなりの成功を収めています。 Windows Dev Kit 2023 の Windows インストールでは、エミュレートされた x64 コードとして実行されるプロセスはわずかで、そのうちの 1 つは Office 365 のクイック実行インストーラーです。

参照: 新しい Microsoft 365 展開ツールの使用方法 (TechRepublic)

ハードウェア AI アクセラレータを試すのは興味深いことでしたが、Qualcomm の開発者プログラムにアクセスする必要があります。 申請してから 1 週間が経過しましたが、必要なツールと SDK にまだアクセスできません。 ただし、ONNX ポータブル モデル標準に基づいているため、Azure の Machine Learning スタジオなどの使い慣れたツールを使用して、ONNX としてエクスポートする準備ができているモデルを設計およびトレーニングできるはずです。

これらは、Qualcomm のツールを使用して最適化し、Microsoft の既存の ONNX ランタイム ライブラリを使用してアプリケーションに追加できます。 うまくいけば、変換プロセスは将来のリリースで自動化されるので、個別に配布するのではなく、すべての CPU、GPU、および NPU で実行できる 1 つの ONNX モデルを構築するだけで済みます。

Arm は Microsoft を超える

Windows 用の Arm ツール チェーンの提供に取り組んでいるのは Microsoft だけではありません。 JetBrains は最近、人気の高い Rider .NET 開発環境の Arm64 バージョンのプレビューを出荷しました。これは、早期アクセス プログラムの一部として利用できます。

完全な Visual Studio 環境は必要なく、より統合された開発環境が必要な場合、Rider は C# 開発の便利な代替手段です。 まだ .NET 7 を完全にはサポートしていませんが、ほとんどの目的には十分に機能します。 これを使用して、Visual Studio でビルドした C# プロジェクトを編集、コンパイル、およびテストすることができました。

ここ数年、Microsoft が開発者をサポートする方法には多くの変更がありました。 .NET の黎明期には、四半期ごとの MSDN CD-ROM でコードとドキュメントを定期的に配布する、企業主導のアプローチがほとんどでした。 オープン プラットフォーム、オープン デザイン、オープン ソース開発への移行によって、すべてが変わりました。 Windows の開発者哲学は、開発者がいる場所に行くことの 1 つになりました。

Linux および Android 用の Dev Kit の使用

開発者の作業方法に対するこれらの変更の結果として、Windows Dev Kit 2023 は純粋な Windows デバイスになるだけではありません。 Azure は Windows と Linux の両方を実行しており、最新のクラウド ネイティブ アプリケーションを構築する場合は、ツールチェーンに Linux のサポートを含める必要があります。

Windows Dev Kit ハードウェアで Linux をネイティブに実行するために必要なドライバーはまだリリースされていませんが、ホストされている Linux カーネルの Windows サポートを WSL 2 経由で利用できます。WSL Ubuntu リリースでは Arm バージョンがインストールされるため、 Windows と Linux の両方でのエンド ツー エンドの Arm サポート。

参照: Linux 101: 技術者が知っておくべきこと (TechRepublic Premium)

このプラットフォームには、Linux や Windows 以外にもさまざまなものがあります。 Android 用 Windows サブシステムの最近のリリースにより、開発者が完全にアクセスできるローカル Android 環境を利用できるようになりました。 完全な Google Play API が含まれていない場合がありますが、モバイル開発ツール Xamarin または MAUI を使用して Visual Studio で記述されたコードをテストするために使用できます。

悲しいことに、Google の Android Studio の Windows バージョンは今のところ純粋に x64 のままなので、エミュレーションでのみ実行されます。 ただし、Microsoft の Arm ハードウェアで WSA を使用すると、コードのテストとデバッグに役立ちます。WSA を使用すると、ホスト マシンで Android の ADB 接続を使用してコードのデバッグとサイドローディングを行うことができるからです。

Microsoft エコシステム外で Dev Kit を使用する

Windows on Arm へのゲートウェイとしての Dev Kit に対する他のベンダーの反応を見るのは興味深いことです。 明らかに、JetBrains の Arm バージョンの Rider のリリースは、IntelliJ のようなツールの Arm バージョンで終了することが望まれる作業へのポインタです。

Microsoft のツールは Windows アプリケーションを構築するための唯一のプラットフォームではないため、Linaro の開発者からの Arm サポートの既存の GitHub プル リクエストがある Google の Flutter のようなテクノロジに注目する価値がありますが、コードはまだメイン ブランチにはありません。 . 基礎となる Dart 言語は、ベータ チャネルで Windows on Arm を既にサポートしており、クロスプラットフォーム アプリケーション開発の別のオプションを提供します。

拡張機能は JavaScript を使用して構築されているため、プラットフォームに依存しないため、Flutter のようなプラットフォームが既に Visual Studio Code を使用しているため、それらを Windows Dev Kit に組み込むのは比較的簡単です。 同じことが最新の開発者スタックの他の要素にも当てはまり、Windows Dev Kit 2023 は Windows 開発だけでなく、はるかに多くの用途に適しています。

Windows Dev Kit は、クロスプラットフォームの Windows を提供するという Microsoft の計画の中心です。 オペレーティング システムはそこにあります。 今こそ、アプリが従う時です。 Microsoft は、開発者向けのハードウェアに積極的に価格を設定することで、コードの移植とテストには費用がかかりすぎるという議論をすばやく根絶することを目指しています。 これは、Arm と Windows をデスクトップに置くことで、私たち全員が利用できる答えです。

Leave a Comment

Your email address will not be published. Required fields are marked *