Copilot+ PC は Windows 11 ハードウェアの新しいクラスで、1 秒あたり 40 兆回を超える演算 (TOPS) を実行できる、リアルタイム翻訳や画像生成などの AI 集中型プロセス用の特殊なコンピューター チップである、高性能ニューラル処理ユニット (NPU) を搭載しています。 Copilot+ PC では、1 日中使えるバッテリーと、最先端の AI 機能とモデルへのアクセスを提供します。 詳細については、「Microsoft の公式ブログの Copilot+ PC の概要」を参照してください。
次の Copilot+ PC 開発者向けガイダンスについて説明します。
- デバイスに関する前提条件
- Arm ベースの Snapdragon Elite X+ チップとは何ですか?
- + NPU プロセッサを搭載した Copilot+ PC でサポートされる固有の AI 機能
- Copilot+ PC で NPU にアクセスする方法
- ONNX Runtime を使用して Copilot+ PC 上の NPU にプログラムでアクセスする方法
- デバイス NPU でローカルに実行されている AI モデルのパフォーマンスを測定する方法
前提条件
このガイダンスは、 Copilot+ PCs に固有です。
新しい Windows AI 機能の多くには、次のような 40 TOPS 以上の処理能力を持つ NPU が必要です。
- Microsoft Surface サーフェス ラップトップ Copilot+ PC
- Microsoft Surface Pro Copilot + PC
- HP OmniBook X 14
- Dell Latitude 7455、XPS 13、Inspiron 14
- Acer Swift 14 AI
- Lenovo Yoga Slim 7x と ThinkPad T14s
- Samsung Galaxy Book4 Edge
- ASUS Vivobook S 15 および ProArt PZ13
- さらに、Copilotや Intel Core Ultra 200V シリーズなど、AMD と Intel の新しいシリコンを搭載した PC。
ビジネス向け Surface Copilot+ PC:
- Intel Core Ultra プロセッサ搭載 Surface Laptop for Business (シリーズ 2) (2025 年 2 月 18 日から利用可能)
- Intel Core Ultra プロセッサを搭載した Surface Pro for Business (シリーズ 2) (2025 年 2 月 18 日から利用可能)
- 新しい Surface Copilot+ PC for Business の概要
Arm ベースの Snapdragon Elite X チップとは
Qualcomm が開発した新しい Arm ベースチップSnapdragon X Elite は、業界トップクラスの ニューラル処理装置(NPU) を搭載し、AI 統合に重点を置いています。 この NPU は、大量のデータを並列に処理でき、1 秒あたり数兆回の演算を実行し、CPU や GPU よりも効率的に AI タスクにエネルギーを使い、デバイスのバッテリー充電を長持ちさせることができます。 NPU は CPU および GPU と連携して動作します。 Windows 11 は、高速かつ効率的なパフォーマンスを実現するために、処理タスクを最適な場所に割り当てます。 NPU は、エンタープライズ グレードのセキュリティを備えたオンデバイス AI インテリジェント エクスペリエンスを実現し、チップからクラウドまでの保護を強化します。
- Qualcomm Snapdragon X Elite の詳細をご覧ください。
- Windows on Arm の使用方法と開発について詳しく説明します。
NPU を搭載した Copilot+ PC でサポートされる独自の AI 機能
Copilot+ PC は、最新バージョンの Windows 11 に付属する独自の AI エクスペリエンスを提供します。 デバイス NPU 上で実行するように設計されたこれらの AI 機能は、Windows の最新リリースに付属しており、 Windows AI Foundry の API を介して利用できるようになります。 NPU で実行(推論)するために最適化されたモデルがサポートする Windows ランタイム API Copilot について詳しく学ぶ。 これらの API は Windows App SDK の今後のリリースで提供されます。
Copilot+ PC で NPU にアクセスする方法
ニューラル処理装置 (NPU) は、新しいハードウェア リソースです。 NPU の利点を最大限に引き出すために、PC 上の他のハードウェア リソースと同様に NPU に特化したソフトウェア開発が必要です。 NPU は、AI モデルを構成するディープ ラーニング算術演算を実行するように特別に設計されています。
上記の Windows 11 Copilot+ AI 機能は、NPU を利用するように特別に設計されています。 ユーザーはバッテリー充電の持ちが向上し、NPU をターゲットとする AI モデルの推論実行時間が短縮されます。 WINDOWS 11 の NPU のサポートには、Arm ベースの Qualcomm デバイスの他、Intel と AMD デバイス (近日公開予定) が含まれます。
NPU を使用するデバイスの場合、タスク マネージャーを使用して NPU リソースの使用状況を表示できるようになりました。
デバイス NPU で推論 (AI タスクを実行) するための推奨される方法は、ONNX Runtime を使用することです。 ONNX Runtime は、GPU や CPU だけでなく NPU に対してプログラミングするための柔軟でパフォーマンスの高いスタックであり、独自の AI モデルを持ち込んだり、Web 上にあるオープンソース AI モデルを使用したりすることができます。 ONNX Runtime を使用して NPU にアクセスする方法の詳細については、以下をご覧ください。また、Windows で AI の使用を開始方法の詳細を確認してください。
注
PyTorch または Tensorflow に他のランタイムを使用する場合はどうでしょうか? PyTorch、Tensorflow、およびその他のシリコン ベンダー提供の SDK の他の種類のランタイムも Windows でサポートされています。 現時点では、柔軟な ONNX 形式に変換することで PyTorch、TensorFlow、およびその他のモデルの種類を実行できますが、ネイティブ サポートは近日公開予定です。
ONNX Runtime を使用して Copilot+ PC 上の NPU にプログラムでアクセスする方法
Microsoft は、ONNX Runtime と呼ばれる完全なオープンソース推論とトレーニング フレームワークを提供しています。 ONNX Runtime は、NPU で AI モデルを実行するために推奨されるオープンソースの Microsoft ソリューションです ONNX Runtime は柔軟性があり、AI モデルを実行するためのさまざまなオプションをサポートしていますが、さまざまな選択肢があるため混乱を招く可能性があります。 このガイドは、Windows Copilot+ PC 向けの選択肢を選択するのに役立ちます。
- Qualcomm Snapdragon X: 現時点では、開発者は Qualcomm AI Engine Direct SDK (QNN) を使用する Qualcomm QNN Execution Provider (EP) をターゲットにする必要があります。 QNN サポート付きの事前構築済みパッケージ をダウンロードできます。 これは、Windows AI Foundry で現在使用されているのと同じスタックであり、 Copilot+ PC Qualcomm デバイスでのエクスペリエンスです。 Qualcomm Snapdragon X Elite NPU の DirectML および WebNN サポートは Build 2024 で発表され、間もなく利用可能になる予定です。
- Intel と AMD NPU デバイス: 追加の NPU デバイスは、2024 年後半に利用できるようになります。 これらのデバイスをターゲットとする場合、DirectML を使用することが推奨されます。
サポートされているモデル形式
多くの場合、AI モデルはトレーニングされ、FP32 などのより大きなデータ形式で利用できます。 ただし、多くの NPU デバイスでは、パフォーマンスと電力効率を向上させるために、INT8 などの下位ビット形式の整数演算のみがサポートされています。 そのため、NPU で実行するには、AI モデルを変換 (または "量子化") する必要があります。 既にすぐに使用できる形式に変換されている多くのモデルがあります。 独自のモデルを持ち込んで (BYOM) 変換または最適化することもできます。
- Qualcomm AI Hub (コンピューティング): Qualcomm は、Snapdragon X Elite を搭載した Copilot+ PC で既に使用が検証されている AI モデルと、この NPU で効率的に実行するように特別に最適化された使用可能なモデルを提供します。 詳細情報: Qualcomm AI Hub を使ってモデルのデプロイを高速化する | Microsoft Build 2024。
- ONNX Model Zoo: このオープンソース リポジトリは、事前トレーニング済みの最新のモデルを ONNX 形式でキュレーションされたコレクションで提供します。 これらのモデルは、Intel と AMD デバイス (近日公開予定) を含め、すべての Copilot+ PC で NPU で使用することをお勧めします。
独自のモデルを使用する場合は、ハードウェア対応モデル最適化ツール Olive を使用することをお勧めします。 Olive は、NPU パフォーマンス最適化ソリューションとして ONNX Runtime を使用するためのモデル圧縮、モデル最適化、モデルコンパイルに役立ちます。 詳細情報: AI が簡単になりました: ONNX Runtime と Olive ツールチェーンが Q&A を支援する方法 | Build 2023。
デバイス NPU でローカルに実行されている AI モデルのパフォーマンスを測定する方法
アプリケーションに統合された AI 機能と、その機能を実行する AI モデルランタイムのパフォーマンスを測定するには:
トレースの記録: 一定期間のデバイス アクティビティを記録することは、システム トレースと呼ばれます。 システム トレースは、レポートの生成に使用できる "トレース ファイル" を生成し、アプリのパフォーマンスを向上させる方法を特定するのに役立ちます。 詳細: システム トレースをキャプチャしてメモリ使用量を分析します。
NPU 使用状況の表示: NPU を利用しているプロセスと、作業を送信する呼び出し履歴を調べます。
CPU での作業と呼び出し履歴の表示: 作業前のフィード AI モデルと作業後処理 AI モデルの結果を確認します。
読み込みとランタイム: AI モデルを読み込み、ONNX Runtime セッションを作成する時間の長さを調べます。
ランタイム パラメーター: モデル ランタイムのパフォーマンスと最適化に影響を与える ONNX Runtime 構成および実行プロバイダー (EP) パラメーターを調べます。
個々の推論時間: NPU から推論ごとの時間とサブ詳細を追跡します。
プロファイラー: AI モデル操作をプロファイリングして、各オペレーターが推論時間の合計に貢献するのにかかった時間を確認します。
NPU 固有: サブ HW メトリック、メモリ帯域幅などの NPU サブ詳細を調べます。
これらの測定を実行するには、次の診断ツールとトレース ツールをお勧めします。
- タスク マネージャー: ユーザーがデバイスにインストールされている Windows オペレーティング システムのパフォーマンス (プロセス、パフォーマンス、アプリ履歴、スタートアップ アプリ、ユーザー、詳細、サービスなど) を表示できるようにします。 デバイスの CPU、メモリ、ストレージ ディスク、Wi-Fi、GPU のリアルタイム パフォーマンス データが表示されます。さらに NPU も表示されます。 データには、使用率、使用可能なメモリ、共有メモリ、ドライバーのバージョン、物理的な場所などが含まれます。
- Windows パフォーマンス レコーダー (WPR): WPR には、NPU アクティビティを記録するためのニューラル処理プロファイルが付属するようになりました。 これは、Microsoft Compute Driver Model (MCDM) と NPU のやりとりが記録されます。 開発者は、NPU の使用状況、NPU を使用しているプロセス、および作業を送信している呼び出し履歴を確認できるようになりました。
- Windows パフォーマンス アナライザー (WPA): WPA は、Windows Performance Recorder (WPR)、Xperf、または評価プラットフォームで実行される評価で記録される Windows イベント トレーシング (ETW) イベントのグラフとデータ テーブルを表示します。 CPU、ディスク、ネットワーク、ONNX Runtime イベントを分析するための便利なアクセス ポイントを提供します。NPU 分析用の新しいテーブルが 1 つのタイムラインに表示されます。 WPA では、作業前のフィード AI モデルと作業後処理 AI モデルの結果に関連する CPU の作業と呼び出し履歴を表示できるようになりました。 Microsoft Store から Windows パフォーマンス アナライザーをダウンロードします。
- GPUView: GPUView は、ログに記録されたビデオとカーネル イベントをイベント トレース ログ (.etl) ファイルから読み取り、データをユーザーにグラフィカルに表示する開発ツールです。 このツールには、GPU 操作と NPU 操作の両方と、NPU などの MCDM デバイスの DirectX イベントの表示のサポートが含まれるようになりました。
-
Windows パフォーマンス アナライザーの ONNX Runtime イベント: ONNXRuntime 1.17 (および 1.18.1 で拡張) 以降、ランタイムで発行されたイベントで次のユース ケースを使用できます。
- AI モデルの読み込みと ONNX Runtime セッションの作成にかかった時間を確認します。
- モデル ランタイムのパフォーマンスと最適化に影響する ONNX Runtime 構成および実行プロバイダー (EP) パラメーターを参照してください。
- NPU (QNN) からの推論時間とサブ詳細ごとに追跡します。
- AI モデル操作をプロファイリングして、各オペレーターが推論時間にどれだけ貢献しているかを確認します。
- ONNX Runtime 実行プロバイダー (EP) プロファイルの詳細について 説明します。
注
WPR UI (Windows に含まれるコマンド ライン ベースの WPR をサポートするために使用できるユーザー インターフェイス)、WPA、GPUView はすべて、Windows Performance Toolkit (WPT) バージョン 2024 以降の一部です。 WPT を使用するには、Windows ADK Toolkit をダウンロードする必要があります。
Windows パフォーマンス アナライザー (WPA) で ONNX Runtime イベントを表示するクイック スタートについては、次の手順に従います。
ort.wprp と etw_provider.wprp をダウンロードします。
コマンド ラインを開き、次のように入力します。
wpr -start ort.wprp -start etw_provider.wprp -start NeuralProcessing -start CPU echo Repro the issue allowing ONNX to run wpr -stop onnx_NPU.etl -compress
Windows パフォーマンス レコーダー (WPR) プロファイルを、CPU、ディスクなどの他 の組み込みの記録プロファイルと組み合わせます。
WPA で
onnx_NPU.etl
ファイルを開きます。 ダブルクリックして、次のグラフを開きます。- "ニューラル処理 -> NPU の利用率
- ONNX イベントの汎用イベント
上記の Microsoft Windows ツールで使用することを検討する追加のパフォーマンス測定ツールは次のとおりです。
- Qualcomm Snapdragon Profiler (qprof): システム パフォーマンスを視覚化し、Qualcomm SoC CPU、GPU、DSP、およびその他の IP ブロック全体の最適化とアプリケーション スケーリングの改善の機会を特定するように設計された GUI およびシステム全体のパフォーマンス プロファイリング ツール。 Snapdragon Profiler を使用すると、サブ HW メトリック、メモリ帯域幅などの NPU サブ詳細を表示できます。