Czy tekstury wyszukiwania są nadal używane do czegokolwiek?

14

Wiem, że jeszcze nie tak dawno (5-10 lat?) Popularne i wydajne było wypalanie danych w teksturach, a następnie odczytywanie danych z tekstur, często za pomocą wbudowanej interpolacji tekstur w celu uzyskania liniowej interpolacji wypieku nasze dane.

Teraz, gdy czas obliczeń jest tańszy w porównaniu do czasu wyszukiwania tekstur, ta praktyka zdecydowanie się zmniejszyła, jeśli nie wszystko razem zniknęło.

Moje pytanie brzmi: czy wypalone tekstury są nadal używane do czegoś? Czy ktoś ma dla nich jakieś zastosowania w nowoczesnej architekturze? Czy wydaje się prawdopodobne, że kiedykolwiek wrócą? (powiedzmy, jeśli zmieni się technologia pamięci lub podstawowa architektura GPU)

Alan Wolfe
źródło
To całkowicie zależy od przypadku użycia. Wyobraź sobie, że obliczenia trwają godzinę. Czy nie byłoby miło wstępnie wygenerować teksturę odnośnika z wynikami i użyć go na GPU w czasie wykonywania? W dzisiejszych czasach instrukcje ALU mogą być szybsze o kilka prostszych rzeczy (na przykład niektóre transformacje kolorów), ale wszystko, co wymaga intensywnych obliczeń, zawsze będzie szybsze przy użyciu tekstów wyszukiwania.
Tara

Odpowiedzi:

17

Tak, tekstury wyszukiwania są nadal używane. Na przykład wstępnie zintegrowane BRDF (powiedzmy oświetlenie otoczenia) lub dowolnie skomplikowane krzywe upieczone do tekstury 1D, lub tekstury 3D do korekcji kolorów lub tekstury szumu zamiast PRNG w module cieniującym.

ALU jest ogólnie tańsze niż próbka tekstury, to prawda, ale nadal masz ograniczoną ilość ALU na ramkę. Procesory graficzne dobrze radzą sobie z ukrywaniem opóźnień, a małe tekstury wyszukiwania prawdopodobnie znajdą się w pamięci podręcznej. Jeśli twoja funkcja jest wystarczająco skomplikowana, nadal warto użyć tekstury odnośnika.

John Calsbeek
źródło