Tensor Processing Unit
Tensor Processing Units (TPUs), auch Tensorprozessoren, sind anwendungsspezifische Chips, die von Google entwickelt wurden, um Anwendungen im Rahmen von maschinellem Lernen zu beschleunigen. TPUs werden vor allem angewendet um MLPs, CNNs und LSTMs zu verarbeiten.
Die von Google entwickelten TPUs wurden speziell für die Software-Sammlung TensorFlow[1] entworfen. TPUs sind die Basis für alle Google Services, welche maschinelles Lernen einsetzen, und wurden auch in den AlphaGo-Maschine-vs.-Mensch-Wettkämpfen mit einem der weltbesten Go-Spieler, Lee Sedol, zum Einsatz gebracht.
Erste Generation
Die erste Generation von Googles TPU wurde auf der Google I/O 2016 vorgestellt und speziell für die Anwendung eines bereits trainierten neuronalen Netzwerks zu unterstützen bzw. zu beschleunigen entworfen.[2] Dies wurde u. a. durch eine geringere Präzision im Vergleich zu normalen CPUs oder GPUs und einer Spezialisierung auf Matrizenoperationen erreicht.
Die TPU bestand aus einem systolischen Array mit einer 256×256 8-Bit Matrizenmultiplikationseinheit (MMU), welche von einem Mikroprozessor mit einem CISC-Befehlsatz angesteuert wurde. Der Chip wurde in einem 28 nm-Prozess gefertigt und taktete mit 700 MHz bei einer TDP von 28 bis 40 W.
Die TPU besaß 28 MiB Arbeitsspeicher am Chip. Zudem waren 4 MiB 32-Bit Akkumulatoren verbaut, welche die Ergebnisse der Matrizenmultiplikationseinheit übernahmen. Die TPU konnte Matrizenmultiplikationen, Konvolutionen und Aktivierungsfunktionen, sowie Datentransfer zum Hoststystem über PCIe 3.0 oder zum DDR3 DRAM, welcher sich am Board befand, ausführen.
Zweite Generation
Die zweite Generation von Googles TPU wurde auf der Google I/O 2017 vorgestellt. Diese soll nicht nur die Anwendung von neuronalen Netzwerken (Inferenz), sondern auch das Training dieser Netzwerke beschleunigen. Diese TPUs besitzen eine Rechenleistung von 180 TFLOPS und werden zu einem „Pod“ mit 11,5 PFLOPS zusammengeschalten. Bei einem Pod handelt es sich hierbei um eine Cluster-Systemarchitektur mit sphärenförmiger Netzwerktopologie von 8×8 TPUs.
Die TPUs der zweiten Generation sind in Form der Google Compute Engine, einem Cloud-Angebot von Google, nutzbar.
Technische Details zur zweiten Generation sind derzeit (Mai 2017) nicht verfügbar. Es wird jedoch davon ausgegangen, dass GDDR5-SRAM zum Einsatz kommt. Zudem dürfte der Chip größer ausfallen als die erste Generation.
Weblinks
- Sebastian Grüner: Tensor Processing Unit: Google baut eigene Chips für maschinelles Lernen. In: golem.de. 19. Mai 2016, abgerufen am 23. November 2016.
- Christof Windeck: Google I/O 2016: "Tensor-Prozessoren" halfen beim Go-Sieg – heise online. In: heise.de. 19. Mai 2016, abgerufen am 23. November 2016.
- Harald Bögeholz: Künstliche Intelligenz: Architektur und Performance von Googles KI-Chip TPU – heise online. In: heise.de. 6. April 2017, abgerufen am 7. April 2017.
- David Petterson, Google TPU Team: In-Data Center Performance Analysis of a Tensor Processing Unit. (PDF) 2. April 2017, abgerufen am 23. Mai 2017 (englisch).
Patente
- Patent US20160342889: Vector Computation Unit in Neural Network Processor. Angemeldet am 3. September 2015, veröffentlicht am 24. November 2016, Anmelder: Google Inc., Erfinder: Gregory Michael Thorson, Christopher Aaron Clark, Dan Luu.
- Patent WO2016186823: Batch Processing in a Neural Network Processor. Angemeldet am 3. März 2016, veröffentlicht am 24. November 2016, Anmelder: Google Inc., Erfinder: Reginald Clifford Young.
- Patent WO2016186801: Neural Network Processor. Angemeldet am 26. April 2016, veröffentlicht am 24. November 2016, Anmelder: Google Inc., Erfinder: Jonathan Ross, Norman Paul Jouppi, Andrew Everett Phelps, Reginald Clifford Young, Thomas Norrie, Gregory Michael Thorson, Dan Luu.
- Patent WO2014105865: System and method for parallelizing convolutional neural networks. Angemeldet am 23. Dezember 2013, veröffentlicht am 3. Juli 2014, Anmelder: Google Inc., Erfinder: Alexander Krizhevsky, Ilya Sutskever, Geoffrey E. Hinton.
Einzelnachweise
- ↑ Jeff Dean, Rajat Monga: TensorFlow - Google’s latest machine learning system, open sourced for everyone. In: Google Research Blog. Google, 9. November 2015, abgerufen am 29. Juni 2016 (englisch).
- ↑ Norm Jouppi: Google supercharges machine learning tasks with TPU custom chip. In: Google Cloud Platform Blog. 18. Mai 2016, abgerufen am 29. Juni 2016 (amerikanisches Englisch).