Zacznij od czasu klatki
Wyprodukowanie każdej klatki trwa jakiś czas: to jej czas klatki, w milisekundach. FPS to ta sama liczba odwrócona, czyli 1000 podzielone przez czas klatki. 5 ms na klatkę to 200 FPS, 10 ms to 100 FPS.
Gra nigdy nie trzyma jednego czasu klatki. Większość klatek wychodzi blisko typowej wartości, a kilka trwa dużo dłużej. Średni FPS te kilka wygładza. Wskaźniki low są po to, żeby je pokazać.
Co znaczy 1% low
Weź wszystkie klatki z nagrania i posortuj je według czasu klatki. Najwolniejszy 1% to Twoje najgorsze klatki. 1% low mówi, jak szybko gra działała właśnie w nich, i jest zapisany jako FPS.
Przykład na prostych liczbach: 1000 klatek, z czego 990 trwało po 5 ms, a 10 po 25 ms.
- Średnia: 5,2 ms na klatkę, czyli 192 FPS.
- 1% low: dziesięć najwolniejszych klatek trwało po 25 ms, czyli 40 FPS.
Licznik pokazuje 192, a gra szarpnęła dziesięć razy. Ta przepaść między średnią a 1% low to właśnie przycięcia zapisane liczbami. Gra, która ma 150 FPS i 1% low na poziomie 120, chodzi płynniej niż ta z 200 FPS i 1% low równym 60.
Co dodaje 0,1% low
0,1% low to ten sam pomysł dla najwolniejszej jednej klatki na tysiąc. Łapie rzadkie, mocne szarpnięcia, które w 1% low się rozmywają.
Jest też bardzo kapryśny. 60 sekund przy 200 FPS to 12 000 klatek, więc 0,1% low opiera się na 12 z nich. Jeden alt-tab albo jedno szarpnięcie przy doczytywaniu przesądza o wyniku. Używaj go na długich nagraniach i nigdy nie oceniaj zmiany po jednym krótkim podejściu.
Dlaczego dwa programy pokazują różne low
Tę liczbę wylicza się na dwa popularne sposoby i na tym samym nagraniu dają one różne wyniki.
- Średnia z najwolniejszego 1%. Bierzesz najwolniejszy 1% klatek, uśredniasz ich czasy i zamieniasz na FPS. Jedna bardzo długa klatka ściąga tę liczbę w dół.
- Percentyl. Szukasz czasu klatki, od którego 99% klatek jest szybsze, i zamieniasz go na FPS. Pojedyncza skrajna klatka prawie go nie rusza.
Żaden sposób nie jest błędny. Ale 1% low z jednego programu nie da się zestawić z 1% low z innego, jeśli nie liczą tak samo. OakmontGamer w każdej sesji liczy pierwszym sposobem, więc jego sesje da się porównywać między sobą.
Jak to dobrze zmierzyć
- Wybierz scenę, którą da się powtórzyć: wbudowany benchmark, powtórkę, tę samą trasę na tej samej mapie. Mecz na żywo za bardzo różni się między podejściami. Dla CS2 aplikacja ma gotową: Gry, CS2, Przegląd, Zmierz na benchmarku.
- Nagraj ją w OakmontGamer. Aplikacja zbiera każdą klatkę sesji i wylicza 1% low oraz 0,1% low. Niczego nie trzeba włączać ręcznie.
- Graj wyraźnie dłużej niż wczytywanie i pierwsze minuty. Kompilacja shaderów i doczytywanie zasobów dają przycięcia, które nie mają nic wspólnego z Twoimi ustawieniami, a aplikacja liczy je osobno.
- Graj wystarczająco długo: kilka minut, żeby najwolniejszy 1% oznaczał setki klatek, a nie garstkę.
- Powtórz co najmniej trzy razy. Każde podejście to osobna sesja w zakładce Sesje danej gry. Zobacz, jak bardzo rozjeżdża się ich 1% low: ten rozrzut to Twój szum.
Teraz zasada, która oszczędza najwięcej czasu: zmiana jest prawdziwa tylko wtedy, gdy przesuwa 1% low o więcej niż szum. Jeśli trzy podejścia na tych samych ustawieniach dają 118, 124 i 121, to poprawka, po której wychodzi 123, niczego nie pokazała.
Testując zmianę, rób to na przemian: z nią, bez niej, znowu z nią. Jeśli najpierw zrobisz wszystkie podejścia bez zmiany, a potem wszystkie z nią, o wyniku zdecyduje rozgrzane GPU albo aktualizacja w tle. Zmierz na benchmarku i Strojenie robią to na przemian za Ciebie.
Jak czytać wynik
- Średnia w górę, 1% low bez zmian: przybyło prędkości tam, gdzie gra i tak była płynna.
- 1% low w górę, średnia bez zmian: gra zrobiła się płynniejsza. W strzelance to lepsza wymiana.
- 1% low daleko pod średnią: coś grze przerywa. Od tego zaczyna poradnik jak znaleźć przyczynę przycięć.
- 1% low spadł po aktualizacji, a nic innego się nie zmieniło: podejrzany jest sterownik albo patch.
Poprawki ocenia się tak samo. Poradnik ustawienia Windows pod gry przechodzi tą metodą przez najpopularniejsze z nich.
Co OakmontGamer mierzy za Ciebie
Aplikacja w każdej sesji zbiera każdą klatkę z zewnątrz gry i niczego do niej nie wstrzykuje. Podaje średni FPS, 1% low, 0,1% low oraz czas klatki w 95. i 99. percentylu.
- Jej 1% low to średnia z najwolniejszego 1% klatek, więc pojedyncze długie klatki się liczą.
- Minuty, które gra spędziła za innym oknem, są wycinane, więc alt-tab nie ciągnie liczb w dół.
- Przycięcia z rozgrzewki i wczytywania są liczone osobno.
- Zakładka Sesje każdej gry trzyma trend. Gdy 1% low spada, podaje, o ile i co się od tamtej pory zmieniło: sterownik GPU, aktualizacja Windows, ustawienie.
- Strojenie testuje jedną zmianę naraz, na przemian z nią i bez niej, i zostawia ją tylko wtedy, gdy 1% low rusza się o więcej niż szum między podejściami.

Sesja bez danych o klatkach mówi, dlaczego ich nie ma, zamiast pokazywać liczbę, za którą nie da się ręczyć.
Wszystko, co mierzy OakmontGamer
