Efektywność energetyczna nowych GPGPU zwiększa się o rząd wielkości
Wszyscy znamy prawo Moore'a i – w mniejszym stopniu – prawo skalowania Dennarda. Ich kombinacja mówi, że za sprawą postępu technologicznego co roku liczba tranzystorów na tej samej powierzchni podwaja się bez zwiększania ogólnego zużycia energii. Jednak od 2005 r. utrzymanie tego tempa jest coraz trudniejsze. Tranzystory nadal stają się coraz mniejsze, ale kolejne generacje urządzeń zużywają coraz więcej energii. Droga ta prowadzi do granicy, po której przekroczeniu procesory będą pobierać za dużo energii elektrycznej w stosunku do swoich rozmiarów i po prostu przepalać się. Inżynierowie obchodzą ten problem przy pomocy procesorów wielordzeniowych. W ten sposób stworzyli jednak kolejną granicę – granicę programowalności. Sprawia ona, że tworzenie oprogramowania uzyskującego więcej mocy z wielu procesorów jest bardzo trudne. Jak więc przełamać te granice? Na to pytanie postanowili odpowiedzieć członkowie projektu EXAFLOW. „Przełamanie granicy mocy i programowalności to dwa powiązane ze sobą aspekty”, mówi prof. Yoav Etsion, koordynator projektu z Izraelskiego Instytutu Technologicznego. „Granica mocy zmusza nas do wynajdowania nowych modeli obliczeniowych i konstrukcji procesorów, które byłyby bardziej wydajne niż dominujący, liczący sobie ponad 70 lat model von Neumanna. Z kolei granica programowalności wymaga od nas zadbania o to, by te nowe modele obliczeniowe były łatwe w użyciu i programowaniu”. Aby zrealizować to założenie, zespół profesora Etsiona zaprojektował procesor nowego typu. Wykorzystuje on paradygmat przetwarzania o pojedynczej instrukcji i wielu wątkach (SIMT) – wywodzący się z kart graficznych (GPU), na przykład firm NVIDIA czy AMD, i będący podstawą obliczeń ogólnego przeznaczenia na kartach GPU (GPGPU). „Inicjatywa EXAFLOW powstała w celu zrewolucjonizowania sposobu projektowania jednostek GPGPU. Chcieliśmy całkowicie przeprojektować sam procesor wokół modelu programowania, a nie odwrotnie. Rzeczywiście, najnowsze wyniki naszych prac dowodzą, że nasz procesor jest zdecydowanie bardziej wydajny od GPGPU, a jednocześnie odznacza się efektywnością energetyczną lepszą o rząd wielkości”, cieszy się prof. Etsion. Te lepsze osiągi wynikają z zastosowania modelu wykonywania „dataflow” – liczy on sobie 50 lat, ale nie wykorzystywano dotąd do wykonywania kodu równoległego. W dataflow instrukcje są wykonywane niezwłocznie po spełnieniu warunku zależności. To różni je od architektur von Neumanna, które wykonują instrukcje, kiedy znajdą się one na górze strumienia, bez względu na zależności. Jeżeli chodzi o efektywność energetyczną, prof. Etsion porównuje te architektury do tradycyjnych żarówek. Zasoby funkcjonalne, gdy porównać je ze standardowymi GPGPU, są takie same, ale różnica tkwi w połączeniach, które pozwalają na komunikowanie wartości pośrednich bezpośrednio między jednostkami funkcjonalnymi. Dzięki temu obliczeniowa sieć szkieletowa może być wykorzystana w niemal 100%. „Używamy dwóch wariantów modelu dataflow („statycznego” i „dynamicznego”) w środowisku uruchomieniowym, aby wyodrębniać równoległość na poziomie instrukcji i wykonywać współbieżne wątki w konfiguracji out-of-order. Kiedy instrukcja z jednego wątku jest blokowana przez długi dostęp do pamięci, jednostki funkcjonalne obliczają instrukcje z innych wątków. Wreszcie, ponieważ wartości pośrednie są komunikowane bezpośrednio między jednostkami funkcjonalnymi, nie potrzebujemy pliku rejestru. A to oznacza kolejną istotną oszczędność energii”, tłumaczy prof. Etsion. Prof. Etsion ma nadzieję, że pozyskanie dowodów na to, iż zerwanie z modelem von Neumanna może oferować istotne korzyści pod względem osiągów i zużycia energii, będzie stanowić inspirację dla innych badaczy, by podjąć prace nad nowymi modelami obliczeniowymi, które pozwolą w końcu przełamać granice mocy i programowalności. Profesor wraz z zespołem analizuje aktualnie możliwości komercjalizacji zbudowanego przez siebie procesora, a także planuje prowadzenie badań w dwóch różnych kierunkach. „Po pierwsze, mój zespół opracowuje nowe architektury procesorów oparte o model dataflow. Po drugie, opracowujemy nowy język dataflow przeznaczony do projektowania architektury sprzętowej i mający uczynić pracę projektantów 10 razy bardziej produktywną. Mamy nadzieję, że uda nam się zaprezentować te rozwiązania w nieodległej przyszłości”, kończy prof. Etsion.
Słowa kluczowe
EXAFLOW, GPGPU, von Neumanna, dataflow, tranzystor, prawo Moore’a, skalowanie Dennarda, granica mocy, granica programowalności, wielordzeniowe, paradygmat procesora