Příručka pro vývojáře Copilot+ PC
Copilot+ počítače jsou novou třídou hardwaru s Windows 11, který využívá vysoce výkonnou jednotku pro neurální zpracování (NPU) – specializovaný počítačový čip pro procesy náročné na AI, jako jsou překlady v reálném čase a generování obrázků – které můžou provádět více než 40 biliónových operací za sekundu (TOPS). Copilot+ počítače poskytují celodenní výdrž baterie a přístup k nejpokročilejším funkcím a modelům umělé inteligence. Další informace najdete v Představujeme Copilot+ počítače - oficiální blog Společnosti Microsoft.
Následující pokyny pro vývojáře týkající se Copilot+ PC zahrnují:
- Požadavky na zařízení
- Co je čip Snapdragon Elite X+ založený na technologii Arm?
- Jedinečné funkce umělé inteligence podporované Copilota počítači s procesorem NPU
- Jak získat přístup k NPU na Copilot+ PC
- Použití modulu runtime ONNX pro programový přístup k NPU na Copilot+ PC
- Měření výkonu modelů AI spuštěných místně na NPU zařízení
Požadavky
Tyto pokyny jsou specifické pro Copilota počítače.
Řada nových funkcí umělé inteligence systému Windows vyžaduje NPU schopné provozovat více než 40 TOPS, včetně dalších věcí:
- Microsoft Surface Laptop Copilot+ PC
- Microsoft Surface Pro Copilot + PC
- HP OmniBook X 14
- Dell Latitude 7455, XPS 13 a Inspiron 14
- Acer Swift 14 AI
- Lenovo Yoga Slim 7x a ThinkPad T14s
- Samsung Galaxy Book4 Edge
- ASUS Vivobook S 15 a ProArt PZ13
- Copilot+ počítače s novými křemíkovýmiAMD a Intel, včetně AMD Ryzen AI řady 300 a Intel Core Ultra řady 200V.
Co je čip Snapdragon Elite X založený na technologii Arm?
Nový čip Snapdragon X Elite na bázi Arm, který vytvořila společnost Qualcomm, zdůrazňuje integraci umělé inteligence prostřednictvím své špičkové jednotky pro neurální zpracování (NPU). Tento NPU dokáže zpracovávat velké objemy dat paralelně a provádět bilióny operací za sekundu a efektivněji využívat energii na úkolech umělé inteligence než procesor nebo GPU, což vede k delší životnosti baterie zařízení. NPU funguje v souladu s procesorem a GPU. Windows 11 přiřazuje úlohy zpracování na nejvhodnější místo, aby bylo možné zajistit rychlý a efektivní výkon. NPU umožňuje inteligentní prostředí umělé inteligence na zařízení s zabezpečením na podnikové úrovni pro lepší ochranu z čipu do cloudu.
- Přečtěte si další informace o Qualcomm Snapdragon X Elite.
- Přečtěte si další informace o používání a vývoji pro Windows na Arm.
Jedinečné funkce umělé inteligence podporované Copilota počítači s NPU
Copilot+ PC nabízejí jedinečné zážitky s AI, které se dodávají s moderními verzemi Windows 11. Tyto funkce AI navržené tak, aby běžely na NPU zařízení, se dodávají v nejnovějších verzích Windows a budou dostupné prostřednictvím rozhraní API v Windows Copilot Runtime. Přečtěte si další informace o rozhraních API prostředí Windows Runtime Copilot podporovaných modely optimalizovanými pro spouštění (odvozování) na NPU. Tato rozhraní API se budou dodávat v nadcházející verzi sady Windows App SDK.
Jak získat přístup k NPU na Copilot+ PC
Neurální procesor (NPU) je nový hardwarový prostředek. Stejně jako jiné hardwarové prostředky na počítači potřebuje NPU software, který je speciálně naprogramovaný, aby využíval výhody, které nabízí. NPU jsou navržené speciálně pro provádění matematických operací hlubokého učení, které tvoří modely AI.
Výše uvedené funkce Windows 11 Copilot+ AI byly speciálně navrženy tak, aby využívaly výhod NPU. Uživatelé získají vylepšenou životnost baterie a rychlejší dobu odvozování pro modely AI, které cílí na NPU. Podpora pro NPU ve Windows 11 bude zahrnovat zařízení založené na platformě Arm, stejně jako zařízení Intel a AMD (již brzy).
U zařízení s NPU je teď možné použít správce úloh k zobrazení využití prostředků NPU.
Doporučeným způsobem inferencování (spouštění úloh AI) na NPU zařízení je použití ONNX Runtime. ONNX Runtime je flexibilní a výkonný zásobník pro programování s NPU, stejně jako s GPU a CPU, což vám umožní používat vlastní modely AI nebo používat open-source modely AI nalezené na webu. Přečtěte si další informace o používání modulu runtime ONNX pro přístup k npU níže nebo si přečtěte další informace o tom, jak Začínáme s AI ve Windows.
Poznámka
A co použití dalších runtime pro PyTorch nebo Tensorflow? Další moduly runtime pro PyTorch, Tensorflow a další typy sady SDK poskytované dodavatelem silicon jsou podporovány také ve Windows. V současné době můžete spustit PyTorch, TensorFlow a další typy modelů převodem na flexibilní formát ONNX, ale nativní podpora bude brzy k dispozici.
Použití modulu runtime ONNX pro programový přístup k NPU na Copilot+ PC
Microsoft poskytuje kompletní open source odvozování a trénovací architekturu s názvem ONNX Runtime. ONNX Runtime je doporučené opensourcové řešení Microsoftu pro spouštění modelů AI na NPU. Vzhledem k tomu, že modul runtime ONNX je flexibilní a podporuje mnoho různých možností spouštění modelů AI, můžou být volby matoucí. Tato příručka vám pomůže vybrat volby specifické pro windows Copilota počítače.
- Qualcomm Snapdragon X: Vývojáři by v současné době měli cílit na poskytovatele spouštění Qualcomm QNN Execution Provider (EP) , který používá Qualcomm AI Engine Direct SDK (QNN). předdefinované balíčky s podporou QNN jsou k dispozici ke stažení. Jedná se o stejný zásobník, který aktuálně používá prostředí Windows Copilot Runtime a zážitky na zařízeních Copilot+ PC s čipem Qualcomm. Podpora DirectML a WebNN byla oznámena na Build 2024 a brzy budou dostupné.
- zařízení Intel a AMD NPU: Další zařízení NPU budou k dispozici později v roce 2024. DirectML je doporučená metoda pro cílení na tato zařízení.
Podporované formáty modelů
Modely AI jsou často natrénované a dostupné ve větších formátech dat, jako je například FP32. Mnoho zařízení NPU však podporuje pouze celočíselnou matematiku v nižšímbitovém formátu, například INT8, pro zvýšení výkonu a účinnosti napájení. Proto je potřeba převést (nebo "kvantizovat") modely AI, aby běžely na NPU. K dispozici je mnoho modelů, které už byly převedeny do formátu připraveného k použití. Můžete také použít vlastní model (BYOM) k převodu nebo optimalizaci.
- Qualcomm AI Hub (Compute): Společnost Qualcomm poskytuje modely AI, které už byly ověřeny pro použití na Copilota počítačích s technologií Snapdragon X Elite s dostupnými modely optimalizovanými pro efektivní provoz na tomto NPU. Další informace: Zrychlete nasazení modelu pomocí Qualcomm AI Hub | Microsoft Build 2024.
- ONNX Model Zoo: Toto opensourcové úložiště nabízí kurátorovanou kolekci předem natrénovaných nejmodernějších modelů ve formátu ONNX. Tyto modely se doporučují pro použití s NPUs na všech Copilot+ počítačích, včetně zařízení Intel a AMD (připravujeme).
Pro ty, kteří chtějí přinést vlastní model, doporučujeme použít nástroj pro optimalizaci modelů s podporou hardwaru, Olive. Olive vám může pomoct s kompresí, optimalizací a kompilací modelu pro práci s modulem RUNTIME ONNX jako řešením optimalizace výkonu NPU. Další informace: Usnadnění práce s AI: Jak vám sada nástrojů ONNX Runtime a Olive pomůže Q&A | Build 2023.
Měření výkonu modelů AI spuštěných místně na NPU zařízení
Měření výkonu integrace prvků AI ve vaší aplikaci a časů běhu souvisejících modelů AI:
Zaznamenat stopu: Záznam aktivity zařízení v určitém časovém období se označuje jako sledování systému. Trasování systému vytvoří "trasovací" soubor, který se dá použít k vygenerování sestavy a pomůže vám zjistit, jak zlepšit výkon vaší aplikace. Další informace: Zachycení systémového trasování za účelem analýzy využití paměti.
Zobrazenívyužití NPU: Zkontrolujte, které procesy používají NPU a které volání odesílají práci.
Zobrazit práci a zásobníky volání na CPU: Prohlédněte si výsledky modelů AI před jejich využitím a výsledky modelů AI po jejich zpracování.
Načítání a modul runtime: Prozkoumejte dobu načítání modelu AI a vytvořte relaci pro modul runtime ONNX.
Parametry běhového modulu: Prozkoumejte parametry konfigurace ONNX Runtime a zprostředkovatele spuštění (EP), které ovlivňují výkon a optimalizaci běhového modulu modelu.
časy jednotlivých inferencí: Sledujte časy jednotlivých inferencí a dílčí podrobnosti z NPU.
Profiler: Profilujte operace AI modelu a zjistěte, jak dlouhou dobu každý operátor přispěl k celkové době inference.
specifické pro NPU: Prozkoumejte dílčí podrobnosti NPU, jako jsou metriky sub-HW, šířka pásma paměti a další.
K provedení těchto měření doporučujeme následující diagnostické a trasovací nástroje:
- Správce úloh: Umožňuje uživateli zobrazit výkon operačního systému Windows nainstalovaného na svém zařízení, včetně procesů, výkonu, historie aplikací, aplikací po spuštění, uživatelů, podrobností a služeb. Data o výkonu v reálném čase se zobrazí pro procesor, paměť, disk úložiště, Wi-Fi, GPU... a teď NPU. Data zahrnují procento využití, dostupné paměti, sdílené paměti, verze ovladače, fyzického umístění a dalších.
- Windows Performance Recorder (WPR): WPR se nyní dodává s profilem neurálního zpracování pro záznam aktivity NPU. Tento záznam zaznamenává interakci s NPU modelu ovladače Microsoft Compute Driver (MCDM). Vývojáři nyní mohou vidět využití NPU, které procesy používají NPU, a zásobníky volání, které odesílají práci.
- Windows Performance Analyzer (WPA): WPA vytváří grafy a tabulky dat událostí Event Tracing pro Windows (ETW), které jsou zaznamenány nástrojem Windows Performance Recorder (WPR), Xperf nebo analýzou, která běží na Assessment Platform. Poskytuje pohodlné přístupové body pro analýzu procesoru, disku, sítě, událostí modulu runtime ONNX a novou tabulku pro analýzu NPU – vše na jedné časové ose. WPA teď může zobrazit práci a volání na procesoru související s předpracovávacími modely AI a výsledky modelu AI po zpracování. Stáhnout Analyzátor výkonu systému Windows z Microsoft Storu.
- GPUView: GPUView je vývojový nástroj, který čte protokolované události videa a jádra ze souboru protokolu trasování událostí (.etl) a prezentuje data uživateli graficky. Tento nástroj teď zahrnuje operace GPU i NPU a také podporu pro zobrazení událostí DirectX pro MCDM zařízení, jako je NPU.
-
události modulu runtime ONNX v analyzátoru výkonu systému Windows: Počínaje onNXRuntime 1.17 (a rozšířenou verzí 1.18.1) jsou k dispozici následující případy použití s událostmi generovanými v modulu runtime:
- Podívejte se, jak dlouho trvalo načíst model AI a vytvořit relaci ONNX Runtime.
- Viz parametry konfigurace modulu runtime ONNX a zprostředkovatele spouštění (EP), které ovlivňují výkon a optimalizaci modulu runtime modelu.
- Sledujte jednotlivé časy inferencí a dílčí podrobnosti z NPU (QNN).
- Profilujte operace modelu AI a zjistěte, jak dlouho jednotlivé operátory trvaly, aby přispěly k celkové době odvozování.
- Přečtěte si další informace o profilaci ONNX Runtime Execution Provider (EP).
Poznámka
Uživatelské rozhraní WPR (uživatelské rozhraní dostupné pro podporu příkazového řádku založené na WPR, které je součástí systému Windows), WPA a GPUView jsou součástí sady Windows Performance Toolkit (WPT) od verze květen 2024+. Chcete-li použít WPT, budete muset: Stáhnout sadu nástrojů Windows ADK Toolkit.
Pro rychlý start pro zobrazení událostí modulu runtime ONNX pomocí analyzátoru výkonu Windows (WPA) postupujte takto:
Stáhněte si ort.wprp a etw_provider.wprp.
Otevřete příkazový řádek a zadejte:
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
Zkombinujte profily Windows Performance Recorder (WPR) s dalšími integrovanými profily nahrávek, jako je procesor, disk atd.
Stáhnout Analyzátor výkonu systému Windows (WPA) z microsoft Storu.
Otevřete soubor
onnx_NPU.etl
v WPA. Double-Click k otevření těchto grafů:- Neurální zpracování –> NPU Utilization
- Obecné události pro události ONNX
Mezi další nástroje měření výkonu, které je potřeba zvážit použití s výše uvedenými nástroji systému Microsoft Windows, patří:
- Qualcomm Snapdragon Profiler (qprof): Nástroj pro profilaci výkonu s grafickým uživatelským rozhraním pokrývající celý systém, určený k vizualizaci výkonu systému a identifikaci příležitostí k optimalizaci a zlepšení škálování aplikací napříč CPU, GPU, DSP a dalšími IP bloky na Qualcomm SoC. Snapdragon Profiler umožňuje zobrazit dílčí podrobnosti NPU, jako jsou dílčí hardwarové metriky, šířka pásma paměti a další.