| Termin | Definicja |
|---|---|
| Valhall | Valhall to architektura zintegrowanych procesorów graficznych ARM Mali, następująca po architekturze Bifrost. Valhall jako architektura układów MaliValhall to czwarta generacja architektury procesorów graficznych Arm Mali, opracowana jako następca Bifrost. Nie jest pojedynczym modelem układu, lecz zestawem rozwiązań projektowych wykorzystywanych w różnych jednostkach GPU integrowanych z układami SoC. Pierwszym procesorem graficznym opartym na Valhall był Mali-G77, a do tej rodziny należą także między innymi Mali-G57, Mali-G68, Mali-G78, Mali-G310, Mali-G510, Mali-G610, Mali-G710 oraz kolejne układy rozwijające tę linię. Konkretna liczba rdzeni, ich konfiguracja i taktowanie zależą od projektu producenta układu scalonego. W porównaniu z wcześniejszą architekturą Bifrost Valhall zachowuje podobny ogólny podział GPU na magistralę sterującą i magistralę danych, ale zmienia organizację jednostek wykonawczych. Architektura wykorzystuje zunifikowany rdzeń cieniujący. Oznacza to, że ten sam typ procesora może wykonywać programy wierzchołkowe, fragmentowe oraz obliczeniowe, zamiast wymagać oddzielnych typów jednostek dla poszczególnych etapów potoku graficznego. Valhall jest licencjonowaną technologią Arm, dlatego nie istnieje jeden identyczny wariant tej architektury we wszystkich telefonach, tabletach, Chromebookach i innych urządzeniach. Budowa rdzenia cieniującego i wykonywanie programówRdzeń Valhall zawiera dwa równoległe silniki przetwarzania. Każdy z nich ma własny zestaw potoków arytmetycznych. W dokumentacji Arm wymieniane są trzy główne klasy potoków obliczeniowych: FMA, CVT i SFU, oraz trzy potoki wspierające operacje stałofunkcyjne. FMA wykonuje operacje typu fused multiply-add, często wykorzystywane w obliczeniach zmiennoprzecinkowych. CVT obsługuje między innymi konwersje formatów i proste operacje całkowitoliczbowe, natomiast SFU służy do funkcji specjalnych, takich jak odwrotności i wybrane funkcje transcendentalne. W rdzeniu znajdują się również potoki load/store, varying i texture. Potok load/store realizuje dostęp do buforów, obrazów i operacji atomowych, które nie są próbkowaniem tekstur. Potok varying oblicza interpolację wartości przekazywanych pomiędzy etapami potoku graficznego, a potok texture obsługuje próbkowanie i filtrowanie tekstur. Jednostki arytmetyczne pracują na grupach wątków określanych jako warpy. Potoki FMA i CVT wykorzystują szerokość 16 wątków; dla operacji 32-bitowej mogą wydać jedną operację na wątek i cykl, a dla wybranych operacji 16-bitowych dwie operacje na wątek i cykl. Modele Mali oparte na Valhall i różnice konfiguracjiRodzina Valhall obejmuje układy przeznaczone dla różnych klas urządzeń. Mali-G77 i Mali-G78 były stosowane jako procesory graficzne dla wydajniejszych urządzeń mobilnych, natomiast Mali-G57 i Mali-G68 kierowano do segmentu o niższym zapotrzebowaniu na powierzchnię krzemową i energię. Mali-G310, G510, G610 i G710 reprezentują późniejsze warianty tej samej linii architektonicznej. Sama nazwa Valhall nie określa wydajności konkretnego GPU, ponieważ na rezultat wpływają także liczba rdzeni, częstotliwość zegara, szerokość interfejsu pamięci, pamięć podręczna, kontroler pamięci oraz konfiguracja całego SoC. Wczesne rdzenie Valhall, takie jak stosowane w Mali-G77, G78, G57 i G68, mają wydajność na poziomie czterech tekselów na cykl zegara i dwóch pikseli na cykl dla pojedynczego rdzenia cieniującego. W późniejszych konstrukcjach, między innymi Mali-G610 i Mali-G710, zwiększono te wartości do ośmiu tekselów i czterech pikseli na cykl, przy czym producent SoC może użyć mniejszej liczby większych rdzeni. Mali-G310 i Mali-G510 pozwalają na bardziej elastyczne dobranie przepustowości obliczeń, teksturowania i zapisu pikseli. Dlatego bez identyfikacji dokładnego modelu Mali oraz jego konfiguracji nie można wiarygodnie określić możliwości graficznych urządzenia. Valhall w sterownikach i praktycznej diagnostyce urządzeniaDo wykorzystania GPU Valhall potrzebny jest kompletny stos oprogramowania: sterownik jądra, komponenty użytkownika odpowiedzialne za obsługę interfejsów graficznych oraz właściwa integracja z systemem operacyjnym i firmware układu. Arm udostępnia otwarte komponenty sterowników jądra dla systemów Android i Linux, ale nie stanowią one pełnego stosu umożliwiającego samodzielne zapewnienie wszystkich funkcji OpenGL ES. W praktyce zgodność zależy od wersji sterownika dostarczonej przez producenta SoC, systemu operacyjnego i poprawnego opisania sprzętu w konfiguracji platformy. Przy diagnozowaniu problemów z grafiką trzeba rozdzielić awarię samego GPU od błędu sterownika, przegrzewania SoC, uszkodzenia pamięci operacyjnej albo problemów z zasilaniem płyty głównej. Objawy takie jak artefakty obrazu, zawieszanie aplikacji 3D, reset urządzenia podczas odtwarzania wideo czy spadki płynności nie wskazują automatycznie na uszkodzenie rdzenia Valhall. Należy sprawdzić dokładny model układu Mali, wersję systemu i sterownika, temperatury, obciążenie GPU oraz występowanie błędów w logach systemowych. Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i podzespołów, w tym diagnostyką problemów z układami graficznymi zintegrowanymi w platformach mobilnych i komputerowych. |