Jak pamięć podręczna działa z renderowaniem opartym na kafelkach?
Czy są jakieś wskazówki, jak poprawić współczynnik trafień w pamięci podręcznej? (na przykład, jeśli płytki są przetwarzane poziomo i mam pionowe segmenty trójkątów o tej samej teksturze, czy działa to gorzej dla pamięci podręcznej niż gdybym miał układ trójkątów w poziomie?)
texture
gpu
shader
optimisation
Felipe Lira
źródło
źródło
Odpowiedzi:
To, czy jest to układ GPU oparty na kafelkach, czy nie, tak naprawdę nie wpływa na architekturę pamięci podręcznej tekstur. Układ pamięci tekstury będzie wyglądał jak jakiś smak rzędu Mortona lub krzywej Hilberta we wszystkich procesorach graficznych.
W rezultacie bardziej wydajne jest renderowanie trójkątów zbliżonych do trójkątów równobocznych, ponieważ system pamięci GPU pobiera linie buforujące tekstur.
Oczywiście na granicach kafelków może się zdarzyć, że będziesz musiał pobrać tekstury dwa razy. Ma to niewielki koszt, ponieważ obramowania kafelków to tylko „kilka” pikseli.
Prawdopodobnie stacjonarne układy GPU zachowują się identycznie z układami GPU opartymi na kafelkach, co pokazują eksperymenty, takie jak następujące: http://www.g-truc.net/post-0597.html
Rozmiar kafelków jest różny, ale obie architektury przetwarzają fragmenty w hierarchię kafelków o różnych rozmiarach.
Przy kodowaniu układów GPU opartych na kafelkach zalecam, aby zawsze pamiętać:
źródło