Jednotka zpracování tenzoru - Tensor Processing Unit

Jednotka pro zpracování tenzoru
Tensor Processing Unit 3.0.jpg
Tensor Processing Unit 3.0
Návrhář Google
Představeno Květen 2016
Typ Neuronová síť
Strojové učení

Tensor Processing Unit ( TPU ) je AI akcelerátor integrovaný obvod specifický pro aplikaci (ASIC) vyvinutý společností Google speciálně pro strojové učení neurálních sítí , zejména pomocí vlastního softwaru Google TensorFlow . Google začal interně používat TPU v roce 2015 a v roce 2018 je zpřístupnil pro použití třetími stranami, a to jak v rámci své cloudové infrastruktury, tak nabídkou menší verze čipu k prodeji.

Přehled

Jednotka pro zpracování tenzoru byla oznámena v květnu 2016 na Google I/O , kdy společnost uvedla, že TPU se v jejich datových centrech používá již více než rok. Čip byl speciálně navržen pro rámec Google TensorFlow , symbolickou matematickou knihovnu, která se používá pro aplikace strojového učení, jako jsou neuronové sítě . Od roku 2017 však Google stále používal CPU a GPU pro jiné typy strojového učení . Jiné designy AI akcelerátoru se objevují také od jiných dodavatelů a jsou zaměřeny na vložené a robotické trhy.

TPU společnosti Google jsou proprietární. Některé modely jsou komerčně dostupné a 12. února 2018 The New York Times uvedl, že Google „by umožnil jiným společnostem koupit přístup k těmto čipům prostřednictvím své služby cloud computingu“. Google uvedl, že byly použity v sériích her Go - Man proti strojům AlphaGo versus Lee Sedol a také v systému AlphaZero , který produkoval programy Chess , Shogi a Go hrající pouze z herních pravidel a dále porazil vedoucí programy v těchto hrách. Google také použil TPU pro zpracování textu Google Street View a dokázal najít veškerý text v databázi Street View za méně než pět dní. Ve Fotkách Google může jednotlivá TPU zpracovat více než 100 milionů fotografií denně. Používá se také v RankBrain, který Google používá k poskytování výsledků vyhledávání.

Ve srovnání s jednotkou pro zpracování grafiky je navržen pro vysoký objem výpočtů s nízkou přesností (např. S 8bitovou přesností) s více vstupními/ výstupními operacemi na joule a postrádá hardware pro rastrování/ mapování textur . Podle Normana Jouppiho jsou TPU ASIC namontovány v sestavě chladiče, která se vejde do slotu pro pevný disk v racku datového centra . Různé typy procesorů jsou vhodné pro různé typy modelů strojového učení, TPU jsou vhodné pro CNN, zatímco GPU mají výhody pro některé plně připojené neuronové sítě a CPU mohou mít výhody pro RNN .

Google poskytuje třetím stranám přístup k TPU prostřednictvím své cloudové TPU služby v rámci Google Cloud Platform a prostřednictvím svých notebookových služeb Kaggle a Colaboratory .

produkty

TPUv1 TPUv2 TPUv3 TPUv4 Edge v1
Datum představení 2016 2017 2018 2021 2018
Procesní uzel 28 nm 16 nm 16 nm 7 nm
Velikost matrice (mm2) 331 <625 <700 <400
Na čipové paměti (MiB) 28 32 32 144
Rychlost hodin (MHz) 700 700 940 1050
Paměť (GB) 8 GB DDR3 16 GB HBM 32 GB HBM 8 GB
TDP (W) 75 280 450 175 2
VRCHY 23 45 90 ? 4

První generace TPU

První generace TPU je 8bitový maticový multiplikační engine, poháněný instrukcemi CISC hostitelským procesorem přes sběrnici PCIe 3.0 . Vyrábí se 28 nm procesem s velikostí matrice ≤ 331  mm 2 . Hodiny rychlost je 700  MHz a má Thermal Design Power 28-40  W . To má 28  MiB z paměť na čipu, a 4  MiB z 32-bitových akumulátorů , které se výsledky 256 x 256 Systolický 8-bitových násobiče . V balíčku TPU je 8  GiB z dvoukanálové 2133 MHz DDR3 SDRAM nabízí 34 Gb / s na šířku pásma. Pokyny přenášejí data do nebo z hostitele, provádějí násobení matic nebo spletení a používají aktivační funkce .

Druhá generace TPU

Druhá generace TPU byla oznámena v květnu 2017. Google uvedl, že design první generace TPU byl omezen šířkou pásma paměti a použití 16 GB paměti s vysokou šířkou pásma v konstrukci druhé generace zvýšilo šířku pásma na 600 GB/s a výkon na 45 tera SKLÁDÁ . TPU jsou poté uspořádány do čtyřčipových modulů s výkonem 180 teraFLOPS. Poté je 64 z těchto modulů sestaveno do 256čipových lusků s výkonem 11,5 petaFLOPS. Je pozoruhodné, že zatímco TPU první generace byly omezeny na celá čísla, TPU druhé generace mohou také počítat s pohyblivou řádovou čárkou . Díky tomu jsou TPU druhé generace užitečné jak pro školení, tak pro odvozování modelů strojového učení. Google uvedl, že tyto TPU druhé generace budou k dispozici v Google Compute Engine pro použití v aplikacích TensorFlow.

Třetí generace TPU

Třetí generace TPU byla oznámena 8. května 2018. Google oznámil, že samotné procesory jsou dvakrát výkonnější než TPU druhé generace a budou nasazeny v luscích se čtyřikrát větším počtem čipů než předchozí generace. To má za následek 8násobné zvýšení výkonu na lusk (až 1024 čipů na lusk) ve srovnání s nasazením TPU druhé generace.

Čtvrtá generace TPU

18. května 2021 hovořil generální ředitel společnosti Google Sundar Pichai o jednotkách zpracování tenzoru TPU v4 během své hlavní přednášky na virtuální konferenci Google I/O. TPU v4 zlepšil výkon více než dvakrát více než čipy TPU v3. Pichai řekl: „Jeden modul v4 obsahuje 4 096 čipů v4 a každý modul má 10krát větší šířku propojovacího pásma na čip ve srovnání s jakoukoli jinou síťovou technologií.“

Edge TPU

V červenci 2018 společnost Google oznámila Edge TPU. Edge TPU je účelový čip ASIC vytvořený společností Google pro spouštění modelů strojového učení (ML) pro edge computing , což znamená, že je mnohem menší a spotřebovává mnohem méně energie ve srovnání s TPU hostovanými v datových centrech Google (také známých jako Cloud TPU). V lednu 2019 Google zpřístupnil Edge TPU vývojářům s řadou produktů pod značkou Coral . Edge TPU je schopen 2 bilionů operací za sekundu za sekundu.

Nabídka produktů zahrnuje jednodeskový počítač (SBC), systém na modulu (SoM), příslušenství USB , mini PCI-e kartu a kartu M.2 . SBC Coral Dev Board a Coral SoM oba běží Mendel Linux OS - derivát Debianu . Produkty USB, PCI-e a M.2 fungují jako doplňky ke stávajícím počítačovým systémům a podporují systémy Linux založené na Debianu na hostitelích x86-64 a ARM64 (včetně Raspberry Pi ).

Runtime strojového učení používané ke spouštění modelů na Edge TPU je založeno na TensorFlow Lite . Edge TPU je schopen pouze zrychlit operace dopředného přechodu, což znamená, že je primárně užitečný pro provádění závěrů (i když je možné na Edge TPU provádět lehké přenosové učení). Edge TPU také podporuje pouze 8bitovou matematiku, což znamená, že aby byla síť kompatibilní s Edge TPU, musí být buď trénována pomocí tréninkové techniky s vědomím kvantování TensorFlow, nebo od konce roku 2019 je také možné použít post- tréninková kvantizace.

12. listopadu 2019 společnost Asus oznámila dvojici jednodeskových počítačů (SBC) s Edge TPU. Deska Asus Tinker Edge T a Tinker Edge R určená pro IoT a edge AI . SBC oficiálně podporují operační systémy Android a Debian . Společnost ASUS také předvedla mini PC s názvem Asus PN60T s Edge TPU.

Dne 2. ledna 2020 společnost Google oznámila modul Coral Accelerator Module a Coral Dev Board Mini, které budou předvedeny na CES 2020 později téhož měsíce. Coral Accelerator Module je vícečipový modul s rozhraními Edge TPU, PCIe a USB pro snadnější integraci. Coral Dev Board Mini je menší SBC s modulem Coral Accelerator Module a SoC MediaTek 8167s .

Pixel Neural Core

15. října 2019 společnost Google oznámila smartphone Pixel 4 , který obsahuje Edge TPU s názvem Pixel Neural Core .

Viz také

Reference

externí odkazy