Přeskočit na obsah

Tensor Processing Unit

Z Wikipedie, otevřené encyklopedie
TPUv4[1]

Tensor Processing Unit (TPU) je hardwarový akcelerátor vytvořený společností Google. Jedná se o sérii integrovaných obvodů (ASIC) specificky navržených pro zpracování úloh ve strojovém učení. První TPU, pro veřejnost zatím nedostupné, Google představil v roce 2015. V roce 2018 se zpřístupnil TPUv2 ve službě Google Cloud.[2] Aktuálně nejvýkonnější verzí TPU kterou Google Cloud nabízí pro běžné uživatele je TPUv5e. V květnu 2024 byla ohlášena verze TPUv6 (někdy také Trillium), která je zatím dostupná jen pro vybrané firmy.[3][4]

Technické informace

[editovat | editovat zdroj]

TPU je primárně navrženo na zpracování velkých matic a jejich počítaní ve strojovém učení. Je vhodný pro modely vytvořené v TensorFlow, JAX nebo PyTorch, které je nutno testovat s velkým množstvím dat týdny až měsíce. TPUv5e má rychlost výpočtu 926 teraFLOPS u 16 bitových operací a až 1 847 teraFLOPS při 8 bitových operacích.[5] 32GB HBM umožňuje rychlý přístup k datům umístěným přímo na čipu. V nejnovější verzi Trillium je rychlost zápisu na čip 1,6 terabajtu za sekundu.

Oproti procesorům a grafickým kartám není vhodný k matematickým úkonům, které vyžadují vysokou přesnost anebo mají vysokou míru větvení. Také nepodporuje trénování modelů s vlastními funkcemi anebo funkcemi if a while.[6]

TenserCore jádra

[editovat | editovat zdroj]

TPU využívá TensorCore jádra s počtem závisejícím na verzi. Každý TensorCore se skládá z jednotek na násobení matic (MXU), vektorů a skalárů. MXU je série násobně-akumulačních jednotek v poli s velikostí závislé na verzi. Pro násobení používá MXU 8 bitů pro exponent a 7 bitů pro mantisu. Pro hromadění používá 1 bit pro znaménko, 8 bitů pro exponent a 23 pro mantisu.[7]

Architektury

[editovat | editovat zdroj]

TPU aktuálně využívá dvě architektury: TPU VM a TPU Node. TPU Node je originální architektura, která už není v Google Cloud podporována. Virtuální stroj je k TPU v tomto případě připojen přes protokol gRPC. V této architektuře nemá uživatel přímý přístup k hostiteli což vede k těžším opravám chyb u strojového učení. Architektura TPU VM řeší tento problém tak, že nechá uživatele připojit přímo k virtuálnímu stroji, který je fyzicky připojen k TPU. Uživatel tak získává root přístup k TPU.[8]

  1. JOUPPI, Norm; KURIAN, George; LI, Sheng. TPU v4: An Optically Reconfigurable Supercomputer for Machine Learning with Hardware Support for Embeddings. In: Proceedings of the 50th Annual International Symposium on Computer Architecture. New York, NY, USA: ACM, 2023-06-17. Dostupné online. DOI 10.1145/3579371.3589350. S. 1–14.
  2. TPU transformation: A look back at 10 years of our AI-specialized chips. Google Cloud Blog [online]. [cit. 2024-11-07]. Dostupné online. (anglicky) 
  3. Introducing Trillium, sixth-generation TPUs. Google Cloud Blog [online]. [cit. 2024-11-07]. Dostupné online. (anglicky) 
  4. HAGEDOORN, Hilbert. Google Announces 6th Generation Trillium TPU: Performance, Memory Bandwidth, Efficiency Improvements. www.guru3d.com [online]. 2024-05-15 [cit. 2024-11-07]. Dostupné online. (anglicky) 
  5. MANN, Tobias. Google says its 'Trillium' TPUs are ready to power the next-generation of AI models. The Register [online]. Situation Publishing, 2024-05-14 [cit. 2024-11-07]. Dostupné online. (anglicky) 
  6. Introduction to Cloud TPU. Google Cloud [online]. [cit. 2024-11-07]. Dostupné online. (anglicky) 
  7. System architecture | Cloud TPU. Google Cloud [online]. [cit. 2024-11-07]. Dostupné online. (anglicky) 
  8. System architecture | Cloud TPU. Google Cloud [online]. [cit. 2024-11-07]. Dostupné online. (anglicky)