technologia
AMD naciska na optymalizację shaderów w grach dzięki nowemu patentowi na chiplet GPU
AMD niedawno opublikowano patent na rozłożenie obciążenia renderowania na wiele chipsetów GPU. Scena gry jest podzielona na poszczególne bloki i rozprowadzona na chiplety, aby zoptymalizować wykorzystanie shaderów w grach. W tym celu stosuje się dwustopniowe segregowanie wiórków.
AMD publikuje patent na aplikację chipletów GPU, aby lepiej wykorzystać technologię cieniowania
Opublikowany nowy patent AMD zapewnia dalszy wgląd w plany firmy dotyczące nowej generacji procesorów graficznych i procesorów w nadchodzących latach. Pod koniec czerwca zatwierdzono do publikacji 54 zgłoszenia patentowe. Nie wiadomo, który z ponad pięćdziesięciu opublikowanych patentów zostanie wykorzystany w planach AMD. Omówione w patentach aplikacje szczegółowo opisują podejście firmy w kolejnych latach.
Aplikacja zauważona przez członka społeczności @ETI1120 na stronie Baza komputerowanumer patentu US20220207827, omawia krytyczne dane obrazu w dwóch etapach, aby efektywnie kierować obciążenia renderowania z GPU przez wiele chipletów. CPU złożyło to po raz pierwszy w Urzędzie Patentowym USA pod koniec ubiegłego roku.
Gdy dane obrazu są domyślnie rasteryzowane na GPU, jednostka cieniująca, znana również jako jednostka ALU, wykonuje to samo zadanie i przypisuje nazwę koloru do poszczególnych pikseli. Teksturowane wielokąty znalezione na konkretnym pikselu w określonej scenie gry są z kolei mapowane bezpośrednio na piksel. W końcu sformułowane zadanie zachowuje nietypowe zasady i różni się tylko innymi teksturami znajdującymi się na innych pikselach. Ta metoda nazywa się SIMD lub Single Instruction – Multiple Data.
W większości aktualnych gier cieniowanie nie jest jedynym zadaniem wykonywanym przez GPU. Zamiast tego po początkowym cieniowaniu wstawia się kilka elementów przetwarzania końcowego. Przykładami działań, które dodałby GPU, byłyby wygładzanie krawędzi, cieniowanie i zaciemnianie środowiska gry. Jednak ray tracing odbywa się razem z cieniowaniem, co tworzy nową metodę obliczeń.
Jeśli mówimy o GPU kontrolującym grafikę w obecnych grach, obciążenie generowane przez komputer wzrasta wykładniczo do tysięcy jednostek obliczeniowych.
W przypadku gier na GPU to obciążenie obliczeniowe skaluje się w miarę idealnie do kilku tysięcy jednostek obliczeniowych. Różni się to od procesorów tym, że aplikacje muszą być specjalnie napisane, aby dodać więcej rdzeni. Harmonogram procesora tworzy tę akcję, dzieląc pracę z GPU na bardziej przyswajalne zadania do przetworzenia przez jednostki obliczeniowe, znane również jako binning. Obraz gry jest renderowany, a następnie dzielony na oddzielne bloki zawierające określoną liczbę pikseli. Blok jest obliczany przez podjednostkę procesora graficznego, gdzie jest następnie synchronizowany i tworzony. Po tej akcji piksele czekające na obliczenie są umieszczane w bloku, dopóki podjednostka karty graficznej nie zostanie ostatecznie użyta. Uwzględniana jest moc obliczeniowa shaderów, przepustowość pamięci i rozmiary pamięci podręcznej.
AMD wyjaśnia w patencie, że udostępnianie i łączenie wymaga dokładnego i kompletnego połączenia danych między wszystkimi elementami GPU, co jest problemem. Łącza z danych spoza chipa mają zwiększone opóźnienie, co powoduje spowolnienie procesu.
Procesory dokonały tego przejścia na chiplety bez wysiłku, ponieważ mogą przesyłać zadanie przez wiele rdzeni, dzięki czemu są one dostępne dla chipletów. Procesory graficzne nie oferują takiej samej elastyczności i umieszczają swój harmonogram porównywalny do podstawowego procesora dwurdzeniowego.
AMD dostrzega potrzebę i próbuje znaleźć odpowiedzi na te problemy, zmieniając potok rasteryzacji i wysyłając zadania między wieloma chipletami GPU, podobnie jak w przypadku procesorów. Wymaga to zaawansowanej technologii binningu, którą firma wprowadza jako „binning dwupoziomowy”, znany również jako „binning hybrydowy”.
W przypadku hiperbinningu podział jest przetwarzany na dwa oddzielne etapy, zamiast być przetwarzany bezpośrednio na bloki piksel po pikselu. Pierwszym krokiem jest obliczenie równania, biorąc środowisko 3D i tworząc obraz 2D z oryginału. Etap ten nazywa się cieniowaniem wierzchołków i jest kończony przed rasteryzacją, a proces ten jest niezwykle minimalny na pierwszym chiplecie GPU. Gdy scena gry jest ukończona, zaczyna się grupować, rozwijać w zgrubne pojemniki i przetwarzać je w pojedynczy chiplet GPU. Następnie można rozpocząć rutynowe zadania, takie jak rasteryzacja i przetwarzanie końcowe.
Nie wiadomo, kiedy AMD zamierza rozpocząć stosowanie tego nowego procesu ani czy zostanie on zatwierdzony. Daje nam jednak wgląd w przyszłość wydajniejszego przetwarzania GPU.
Źródła wiadomości: Baza komputerowa, Darmowe patenty online
„Certyfikowany guru kulinarny. Internetowy maniak. Miłośnik bekonu. Miłośnik telewizji. Zapalony pisarz. Gracz.”