Opracowana przez Google jednostka przetwarzania tensorowego (TPU) pobiła w zakresie wydajności w systemach uczenia maszynowego system oparty na procesorze Intel Xeon i GPU NVidii o cały rząd wielkości. Opublikowany właśnie 17 stronicowy artykuł opisuje dokładnie jakie testy przeprowadzono i jakie były ich wyniki: TPU jest około 15 razy szybsze i dostarcza 30 razy więcej mocy obliczeniowej na wat niż konkurencja.
W maju zeszłego roku Google ogłosił, że rozpoczyna produkcję układów ASIC stworzonych do systemów uczenia maszynowego, jakie wykorzystuje w swoich data-center. Obecnie udostępniane są pierwsze analizy tych układów.
"Chcemy zatrudniać dobrych inżynierów i chcemy, aby wiedzieli oni że dostarczają najwyższej jakości rozwiązań - chcemy aby klienci naszej chmury znali nasze możliwości: mówił Norman P. Jouppi, inżynier sprzętowy, który koordynuje pracę około 70 inżynierów w grupie zajmującej się tworzeniem TPU. Jednym z projektantów systemu był emerytowany profesor U.C. Berkely, David Patterson. Jest on weteranem projektowania architektur procesorów.
TPU wykorzystuje się obecnie w Google do przetwarzania danych, aczkolwiek firma odmawia bliższych komentarzy np. tego na jaką skalę zaimplementowano ten system w serwerach.
TPU to pobierający około 40 W procesor wyprodukowany w technologii 28 nm. Taktowany jest zegarem 700 MHz i wykorzystywany do akceleracji stworzonego przez Google algorytmu TensorFlow. Główna jednostka logiczna tych układów składa się z 65536 8 bitowych układów mnożąco-akumlujących o 24 megabitów pamięci cache. System ten dostarcza możliwość realizacji 92 teraoperacji na sekundę.
Jak wynika z przeprowadzonych w 2015 roku przez Google testów, w zakresie algorytmów uczenia maszynowego TPU działa od 15 do 30 razy szybciej i dostarcza od 30 do 80 razy lepszą wydajność na wat pobranej mocy niż procesory serwerowe Intel Haswell i GPU K80 produkowane przez NVidię. "Ogromna poprawa wydajności na wat była głównym uzasadnieniem wykorzystania dedykowanego ASICa" czytamy w raporcie.
Wykorzystane do testów procesory, to 22 nm 18 rdzeniowy Intel Haswell E5-2699 v3 pobierający 145 W i taktowany 2,3 GHz oraz Nvidia GPU K80 o poborze 150 W i zegarze 875 MHz.
TPU wykorzystuje takie samo oprogramowanie TensorFlow, jak akceleratory oparte na GPU - wystarczy wymienić tylko driver w rdzeniu aplikacji.
Specjaliści z Google odkryli, że na działanie układu największy wpływ ma przepustowość układów pamięci - podnoszenie zegara taktującego procesor dawało o wiele mniejsze benefity.
Google informuje jednocześnie, że od czasu przeprowadzenia testów w 2015 roku sporo się zmieniło. Intel zaprezentował CPU wykonane w procesie 14 nm, a NVidia GPU 16 nm. Z drugiej natomiast strony w nowych akceleratorach TPU planuje się wykorzystanie pamięci GDDR5 (z takiej korzystał K80) zamiast wykorzystywanej obecnie DDR3.
"W przyszłości CPU i GPU z pewnością będzie szybsze, jednakże akcelerator z TPU i dwuletnimi pamięciami jest i tak 70 razy szybszy niż dwuletnie GPU i 200 razy szybszy niż dwuletnie CPU, podsumowują przedstawiciele Google. Jak dodają, częściowo wynikać może to z tego, że ciężko realizować jest na procesorach Intela, 8 bitowe operacje.
Jak przyznaje firma układy GPU w przyszłości mogą zbliżyć się do wymagań firmy, ale z drugiej strony "Jest pełno sposobów, na jakie możemy jeszcze zoptymalizować TPU, więc nie jest to prosty konkurent", jak mówią przedstawiciele Google.
Jak czytamy w dokumencie, producenci układów zanadto skupili się na konwolucyjnych sieciach neuronowych (CNN), a nie są to wcale najpopularniejsze ich rodzaje w realnych aplikacjach. Wielowarstwowe perceptrony (MLP) to około 61% zadań dla AI Google, CNN jest zaledwie 5%.
"Jakkolwiek CNN mogą być popularne w niektórych aplikacjach, to ilość modeli konwolucyjnych nie zbliżyła się nawet do MLP czy LSTM (Długa pamięć krótkoterminowa) w naszych data-center. Mamy nadzieję, że architekci układów skupią się na MLP i LSTM tak samo jak skupiają się na CNN, czytamy w informacjach Google. Przypomina to sytuację w której firmy skupiały się na wydajności zmiennoprzecinkowej CPU, a okazało się, że obliczenia na procesorach zdominowane są przez liczby całkowite.
Źródło: http://www.eetimes.com/document.asp?doc_id=1331560
W maju zeszłego roku Google ogłosił, że rozpoczyna produkcję układów ASIC stworzonych do systemów uczenia maszynowego, jakie wykorzystuje w swoich data-center. Obecnie udostępniane są pierwsze analizy tych układów.
"Chcemy zatrudniać dobrych inżynierów i chcemy, aby wiedzieli oni że dostarczają najwyższej jakości rozwiązań - chcemy aby klienci naszej chmury znali nasze możliwości: mówił Norman P. Jouppi, inżynier sprzętowy, który koordynuje pracę około 70 inżynierów w grupie zajmującej się tworzeniem TPU. Jednym z projektantów systemu był emerytowany profesor U.C. Berkely, David Patterson. Jest on weteranem projektowania architektur procesorów.
TPU wykorzystuje się obecnie w Google do przetwarzania danych, aczkolwiek firma odmawia bliższych komentarzy np. tego na jaką skalę zaimplementowano ten system w serwerach.
TPU to pobierający około 40 W procesor wyprodukowany w technologii 28 nm. Taktowany jest zegarem 700 MHz i wykorzystywany do akceleracji stworzonego przez Google algorytmu TensorFlow. Główna jednostka logiczna tych układów składa się z 65536 8 bitowych układów mnożąco-akumlujących o 24 megabitów pamięci cache. System ten dostarcza możliwość realizacji 92 teraoperacji na sekundę.
Jak wynika z przeprowadzonych w 2015 roku przez Google testów, w zakresie algorytmów uczenia maszynowego TPU działa od 15 do 30 razy szybciej i dostarcza od 30 do 80 razy lepszą wydajność na wat pobranej mocy niż procesory serwerowe Intel Haswell i GPU K80 produkowane przez NVidię. "Ogromna poprawa wydajności na wat była głównym uzasadnieniem wykorzystania dedykowanego ASICa" czytamy w raporcie.
Wykorzystane do testów procesory, to 22 nm 18 rdzeniowy Intel Haswell E5-2699 v3 pobierający 145 W i taktowany 2,3 GHz oraz Nvidia GPU K80 o poborze 150 W i zegarze 875 MHz.
TPU wykorzystuje takie samo oprogramowanie TensorFlow, jak akceleratory oparte na GPU - wystarczy wymienić tylko driver w rdzeniu aplikacji.
Specjaliści z Google odkryli, że na działanie układu największy wpływ ma przepustowość układów pamięci - podnoszenie zegara taktującego procesor dawało o wiele mniejsze benefity.
Google informuje jednocześnie, że od czasu przeprowadzenia testów w 2015 roku sporo się zmieniło. Intel zaprezentował CPU wykonane w procesie 14 nm, a NVidia GPU 16 nm. Z drugiej natomiast strony w nowych akceleratorach TPU planuje się wykorzystanie pamięci GDDR5 (z takiej korzystał K80) zamiast wykorzystywanej obecnie DDR3.
"W przyszłości CPU i GPU z pewnością będzie szybsze, jednakże akcelerator z TPU i dwuletnimi pamięciami jest i tak 70 razy szybszy niż dwuletnie GPU i 200 razy szybszy niż dwuletnie CPU, podsumowują przedstawiciele Google. Jak dodają, częściowo wynikać może to z tego, że ciężko realizować jest na procesorach Intela, 8 bitowe operacje.
Jak przyznaje firma układy GPU w przyszłości mogą zbliżyć się do wymagań firmy, ale z drugiej strony "Jest pełno sposobów, na jakie możemy jeszcze zoptymalizować TPU, więc nie jest to prosty konkurent", jak mówią przedstawiciele Google.
Jak czytamy w dokumencie, producenci układów zanadto skupili się na konwolucyjnych sieciach neuronowych (CNN), a nie są to wcale najpopularniejsze ich rodzaje w realnych aplikacjach. Wielowarstwowe perceptrony (MLP) to około 61% zadań dla AI Google, CNN jest zaledwie 5%.
"Jakkolwiek CNN mogą być popularne w niektórych aplikacjach, to ilość modeli konwolucyjnych nie zbliżyła się nawet do MLP czy LSTM (Długa pamięć krótkoterminowa) w naszych data-center. Mamy nadzieję, że architekci układów skupią się na MLP i LSTM tak samo jak skupiają się na CNN, czytamy w informacjach Google. Przypomina to sytuację w której firmy skupiały się na wydajności zmiennoprzecinkowej CPU, a okazało się, że obliczenia na procesorach zdominowane są przez liczby całkowite.
Źródło: http://www.eetimes.com/document.asp?doc_id=1331560
Fajne? Ranking DIY