TPU, czip Google do maszynowego uczenia, w wydajności deklasuje GPU

TPU, czip Google do maszynowego uczenia, w wydajności deklasuje GPU06.04.2017 13:22
Zasłonięte radiatorem Tensor Processing Unit na karcie PCIe (źródło: Google)

NVIDIA ma poważne kłopoty. W ostatnich kwartałach ogromnywzrost wartości firmy na giełdzie napędzała wcale nieniekwestionowana dominacja „zielonych” w dziedzinie gier, leczich rosnące znaczenie w dziedzinie sztucznej inteligencji imaszynowego przetwarzania obrazu. Nowe superszybkie mikroarchitekturyGPU, w połączeniu z własnościowym i zarazem standardowym już dlabranży frameworkiem CUDA sprawiły, że na tym polu firma nie miałakonkurentów. A tu nagle pojawia się Google, przedstawiając swójwłasny czip do maszynowego uczenia się, który deklasuje w tychzastosowaniach najlepsze układy graficzne, przynosząckilkunastokrotnie większą wydajność przy kilkudziesięciokrotniemniejszym zużyciu energii.

Problem stał się widoczny jakieś cztery lata temu, gdyrozpoczęły się prace nad usługą rozpoznawaniamowy w chmurze. Google zdało sobie sprawę, że gdyby wszyscyjego użytkownicy zechcieli skorzystać z tego systemu przez trzyminuty dziennie, to musiałoby podwoić liczbę wykorzystywanychcentrów danych, tylko po to, by obsłużyć obciążeniewykorzystywanych w nich systemów maszynowego uczenia się, wwiększości bazujących na akceleratorach GPU. Zamiast jednak braćsię do budowy nowych centrów danych, Google postanowiło spróbowaćsił w zaprojektowaniu czipu, którego architektura od podstaw będziezoptymalizowana pod kątem maszynowego uczenia.

Ostatecznie więc zdecydowano się na zbudowanie autorskiegoukładu ASIC, który pomoże wypełnić gwałtownie rosnące potrzebyw zakresie wykorzystania głębokich sieci neuronowych. Miał onzajmować się inferencją, czyli uruchamianiem już wytrenowanych naGPU sieci neuronowych, i ostatecznie otrzymał nazwę TensorProcessing Unit (TPU), jako że skrojono go pod kątem równoleglerozwijanego oprogramowania – biblioteki TensorFlow,przeznaczonej do obliczeń numerycznych z wykorzystaniem grafówskierowanych.

Zasłonięte radiatorem Tensor Processing Unit na karcie PCIe (źródło: Google)
Zasłonięte radiatorem Tensor Processing Unit na karcie PCIe (źródło: Google)

O konstrukcji TPU możemy się dziś dowiedzieć więcej zartykułuIn-Datacenter Performance Analysis of a Tensor Processing Unit,który właśnie został zgłoszony przez liczny zespół inżynierówGoogle’a na tegoroczne 44. międzynarodowe sympozjum architekturykomputerowej (ISCA). Pokrótce mówiąc, w TPU mamy macierz 65536 8-bitowychjednostek wykonywania operacji MAC (mnożenie-akumulacja), które podłączone są do dużej (28 MiB), software’owozarządzanej pamięci. Niczego specjalnego tam więcej nie ma, a choćcały układ to specjalizowany ASIC o ograniczonej liczbiewykonywanych instrukcji, Google twierdzi, że zachowało to pewnąelastyczność układów FPGA, tak by można było dostosować TPU doróżnych sieci neuronowych i różnych typów algorytmówmaszynowego uczenia się.

Plan czipu TPU
Plan czipu TPU

Dość interesujące jest to, jak TPU komunikuje się zkomputerem. Nie było czasu na integrację z procesorem, Googleposzło po linii najmniejszego oporu. Czip wpinany jest po prostu wmagistralę PCIe, w sumie tak samo, jak współczesne zewnętrznekarty graficzne. Jednak w przeciwieństwie do GPU samo nie pobierainstrukcji – to procesor musi wysłać mu rozkazy, co czyni gobardziej odpowiednikiem jednostki zmiennoprzecinkowej (FPU) niżprocesora graficznego.

Schemat blokowy TPU
Schemat blokowy TPU

Najbardziej oczywiście interesujące są możliwości takiegoukładu. A te są oszałamiające, w praktyce czyniąc wykorzystanieCPU i GPU w uruchamianiu sieci neuronowych bezsensownymi. Googleprzedstawia dwie metryki, wydajność całkowitą na wat(uwzględniającą połączoną moc obliczeniową CPU i GPU lub TPU)oraz oraz wydajność przyrostową na wat (uwzględniającą jedyniemoc dostarczoną przez GPU lub TPU). Wszystko to w odniesieniu doprocesorów serwerowych Intela z rdzeniami Haswell oraz akceleratorówgraficznych Tesla K80 Nvidii. I tak oto:

  • System z haswellowym CPU i akceleratorem Tesla K80, w stosunku dosystemu z samym CPU oferuje całkowitą wydajność na wat od 1,2 od2,1 razy większą. Wydajność przyrostowa Tesli K80 jest 1,7-2,9razy większa względem CPU z rdzeniami Haswella.
  • Tymczasem system z haswellowym CPU i TPU w stosunku do systemu zsamym CPU oferuje całkowitą wydajność na wat od 17 do 34 razywiększą. Wydajność przyrostowa TPU jest zaś 41-83 razy większawzględem CPU i 25-29 razy większa od Tesli K80.

Warto podkreślić, że to dopiero pierwsza generacja TPU,zbudowana w litografii 28 nm, wykorzystywana w praktyce w centrachdanych Google’a od 2015 roku. Niebawem pojawi się druga generacja,wykorzystująca proces 14 nm, co powinno nawet dwukrotnie zwiększyćjej wydajność na wat.

Do tego dojdą ulepszenia logiki, mające przyspieszyć TPU onawet 50% oraz lepsza infrastruktura serwerowa. Można zastanowićsię nad szybszymi magistralami i szybszą pamięcią, które pozwoląnawet trzykrotnie zwiększyć wydajność tych jednostek tensorowych.

Na razie nie wiadomo w tej kwestii powie Nvidia. RozwiązaniaGoogle’a nie są na sprzedaż, przynajmniej nie bezpośrednio –Google chce, byśmy korzystali z nich przez upublicznione interfejsy.Czy ktoś rzuci rękawicę firmie z Mountain View, oferująckonkurencyjne architektury TPU, dostępne dla wszystkich na wolnymrynku? Jeśli nie, to w najbliższych latach Google osiągnieniemożliwą do wyrównania przewagę nad resztą świata wdziedzinie sztucznych inteligencji i maszynowego uczenia się.Pozostaje tylko czekać, aż mityczny Googlebot zastąpi cały zarządkorporacji, co by nie mówić potwornie ograniczony swoimi białkowymimózgami.

Źródło artykułu:www.dobreprogramy.pl
Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.