Larrabee nie chce odejść: jeden człowiek tworzy GPU na wolnej licencji, nawiązujące do pomysłów Intela

Larrabee nie chce odejść: jeden człowiek tworzy GPU na wolnej licencji, nawiązujące do pomysłów Intela

Larrabee nie chce odejść: jeden człowiek tworzy GPU na wolnej licencji, nawiązujące do pomysłów Intela
12.03.2015 14:58

Niewiele jest w świecie IT urządzeń równie obciążonych patentowoco procesory graficzne. Każdy z liczących się producentów siedzi naogromnym patentowym portfolio, zazdrośnie strzegąc swojej własnościintelektualnej do tego stopnia, że nawet samo oglądanie koduwłasnościowych sterowników graficznych wiąże się z koniecznościąpodpisania NDA. Dziś, gdy GPU odgrywa znaczącą rolę nie tylko wrenderowaniu grafiki, ale staje się po prostu programowalnymprocesorem do wszelkich obliczeń równoległych, potrzebujemy nie tylkopotężnych i kosztownych kart pokroju Titana X, ale też sprzętu,którego schematy, specyfikacja i dokumentacja byłyby wolne i dostępnedla wszystkich. Poznajcie procesor Nyuzi, powstający na bazieporzuconego przez Intela procesora Larrabee.

Larrabee było głośnym projektem minionej dekady – na bazierdzeni x86 z Pentium, połączonych z jednostkami przetwarzaniawektorowego, Intel chciał zbudować kartę graficzną, która konkurowaćby mogła z rozwiązaniami zielonych i czerwonych. Niewiele z tegowyszło – skromna wydajność i ciągłe opóźnienia prawiepogrzebały tę inicjatywę. Dziś pozostały z niej tylko stosowane wstacjach roboczych i superkomputerach koprocesory XeonPhi.

Nyuzi jest próbąpowrotu do założeń, jakie stały za Larrabee. Pracuje nad nim jedenczłowiek, Jeff Bush, a uzyskane przez niego wyniki każą powiedziećchapeau bas! Zaprojektowanyprzez niego rdzeń zawiera pełen potok grafiki, wsparcie dlawielowątkowości, wektorową jednostkę zmiennoprzecinkową i podsystempamięci podręcznej L1/L2. Zrobić go sobie może każdy, kto ma pod rękąodpowiedni układ FPGA – całość jest zdefiniowana w językuSystemVerilog i udostępniona na wolnej licencji LGPL.

Bush przygotował także dlaswojego układu pełen zestaw narzędzi deweloperskich, w tym bibliotekidla kompilatora LLVM i narzędzia testowe. Znaleźć je możecie naGitHubie.Znajdziemy tu też emulator software'owy, dzięki któremu definicję GPUmożna uruchomić na dowolnym komputerze osobistym, działającym podkontrolą Linuksa, OS X czy Windows. Pomóc to ma wszystkim, którzyeksperymentują z mikroarchitekturami, modelują wydajność czy pisząoprogramowanie na równoległe procesory.

Zastanawiacie się pewnie, jakwygląda kwestia wydajności takiego GPU dla majsterkowiczów.Informacje o tym pojawiły się w zeszłym miesiącu na usenetowej grupiecomp.arch.fpga. Autor stworzył własny silnik 3D, wykorzystującyjednostkę wektorową i wielordzeniowość, za jego pomocą wyrenderowałanimację klasycznego czajniczka OpenGL (około 2300 trójkątów),uruchomioną na jednym rdzeniu na FPGA taktowanym zegarem 50 MHz.Wygląda to tak:

Teapot

Zademonstrował też renderowaniestatycznej sceny z użyciem 66 tys. trójkątów. Osiem wirtualnychrdzeni w 32 wątkach potrzebowało do tego 200 milionów instrukcji:

Obraz

Ożywienie idei stojącej zaLarrabee – wykorzystania wielu małych, prostych rdzeni,połączonych wysokoprzepustową pierścieniową magistralą – możewydawać się próbą powrotu do początków stulecia, czy też wskrzeszeniazałożeń stojących za procesorami Cell (znanymi głównie z PlayStation3), ale czy oznacza to, że nie warto próbować tej drogi? To prawda,kolejne generacje GPU Nvidii i AMD zyskiwały coraz więcej możliwościobiecywanych przez Larrabee poprzez OpenCL, CUDA czy DirectCompute,ale i tak taka architektura była znacznie bardziej elastyczna,łatwiej sobie radząc z kwestiami dla tradycyjnych GPU trudnymi,obiecując nawet możliwość ujednolicenia w przyszłości procesorówszeregowych i równoległych.

Programy

Zobacz więcej
Źródło artykułu:www.dobreprogramy.pl
Oceń jakość naszego artykułuTwoja opinia pozwala nam tworzyć lepsze treści.
Wybrane dla Ciebie
Komentarze (19)