artykuły

HotChips 2019: przegląd sprzętowych akceleratorów SI

8
4 września 2019, 15:21 Mateusz Brzostek

Intel Nervana NNP-I 1000

Nervana NNP-I 1000 (nazwa robocza Spring Hill) to akcelerator wnioskowania na podstawie wyuczonych sieci neuronowych. Został zaprojektowany na zamówienie dużego klienta – nie powiedziano tego wprost, ale wedle wszelkich przesłanek chodzi o Facebooka. NNP-I to stosunkowo niewielki układ, którego budżet energetyczny można dostosować w zakresie od 10 do 50 W.

NNP-I 1000 to układ bardzo podobny do laptopowych procesorów Ice Lake U/Y. Zamiast 2 rdzeni x86 i układu graficznego wbudowano 12 bloków ICE, czyli Inferencing Compute Engine – „wnioskująca maszyna obliczeniowa” (skrót nie ma nic wspólnego z nazwą roboczą Ice Lake). NNP-I ma dwa rdzenie x86 w nowej architekturze Sunny CoveWięcej informacji niebawem na PCLabie., osiem segmentów wspólnej pamięci podręcznej po 3 MB, kontroler PCI-E i kontroler pamięci LPDDR4X lub DDR4. Rdzenie x86, grupy dwóch ICE i bloki pamięci podręcznej są połączone magistralą pierścieniową podobnie jak w zwyczajnych laptopowych lub desktopowych procesorach. NNP-I można potraktować jako dwurdzeniowy procesor x86 z wbudowanym akceleratorem SI zamiast GPU – układ jest wykonany w tym samym procesie technologicznym, co procesory, ma niemal identyczną obudowę i podobnie jak zwykłe procesory, wymaga obecności chipsetu (w osobnym jądrze, ale tej samej obudowie).

Sercem każdego bloku ICE jest 4-wymiarowa macierz jednostek obliczeniowych operujących na 16-bitowych liczbach zmiennoprzecinkowych lub liczbach całkowitych o precyzji 1, 2, 4 lub 8 bitów. Ta część koprocesora zajmuje się głównie masowym mnożeniem i dodawaniem. W ICE jest też wbudowany procesor wektorowy, oparty na licencjonowanym od firmy Cadence projekcie Tensilica VP6, obrabiający 512-bitowe wektory liczb o tych samych typach i prezycji. ICE mają 4 MB lokalnej pamięci, która ma zminimalizować konieczność wymiany danych pomiędzy ICE a wspólną pamięcią podręczną lub zewnetrzną pamięcią LPDDR4X.

W przeciwieństwie do innych maszyn do SI Intela, NNP-I nie obsługuje formatu BFLOAT16. Zdaniem inżynierów nie było to potrzebne w docelowych zastosowaniach – prawdopodobnie większość wnioskowania jest prowadzona na 8-bitowych liczbach całkowitych. Jak twierdzi Intel, połączenie rdzeni x86, koprocesora wektorowego i sieci małych jednostek obliczeniowych zapewnia najlepszą wydajność w typowych zadaniach związanych z wnioskowaniem, gdzie spore części algorytmu nie dają się zrównoleglić, ale wymagają dużo przesuwania danych i muszą być ukończone szybko.

Akcelerator Spring Hill będzie produkowany w dwóch formach – niskoenergetycznej, zamontowanej na module M.2 wraz z kością pamięci LPDDR4X o pojemności 32 GB, oraz mniej energooszczędnej na karcie rozszerzeń PCI-E, z kilkoma kośćmi DDR4.

Można zauważyć, że jądro Spring Hill jest dość duże – ma wielkość porównywalną do 8-rdzeniowych chipów Intela z rodziny Coffee Lake/Comet Lake.

NNP-I w wersji na karcie rozszerzeń – ta testowa płyta Intela może prawdopodobnie działać samodzielnie.

Intel dostarcza już testowe układy swojemu „definitional partner”, czyli firmie, która określiła wymagania, jakie ma spełniać NNP-I – najprawdopodobniej chodzi o Facebooka. Inżynierowie Intela pracują obecnie nad dwoma kolejnymi generacjami NNP-I.

2