Tagi:

AutorWątek: Netgraph - instrukcja  (Przeczytany 1153 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline Wilk

  • Moderator
  • śmierdzący zgnilizną brudas
  • *****
  • Wiadomości: 5703
  • Wypił browarów: 367
  • Brud/Czysty: +653/-339
    • Status GG
    • Crudelis - oficjalna strona
Netgraph - instrukcja
« dnia: 19 Luty , 2017, 14:17:15 pm »
Jako że słyszałem już milion bajek o tym, jak działa netgraph, postanowiłem napisać solidną instrukcję tłumaczącą każdą wartość z osobna. Starałem się opisać to w miarę ludzkim językiem, żeby każdy wiedział, o co w danym punkcie chodzi.

Gotowi? No to jedziemy.



(http://imgur.com/a/Pqgl5)


Tak wygląda typowy netgraph aktywowany komendą net_graph 1. Netgraph na bieżąco informuje o wszystkim, co potrzebne jest do oceny wydajności komputera klienta i serwera.


PIERWSZY WIERSZ
fps: ilość klatek na sekundę (fps-ów) generowanych przez komputer klienta (gracza). Na powyższym przykładzie jest to 189 fps.

var: odchylenie standardowe fpsów u klienta wyciągnięte na podstawie średniej z ostatnich 1000 ramek (ticków), mierzone w milisekundach. Przekładając na ludzkie - jeśli masz 100 fpsów i 10 var, to znaczy, że w ostatnich 1000 tickach twój komputer generował każdą klatkę w granicach 10 ms (10 / 1000 sekundy) względem czasu, kiedy powinien był to zrobić. Na powyższym przykładzie jest to 1.0 ms.

ping: czas, jaki pakiet informacji potrzebuje na przebycie drogi klient-serwer-klient (tam i z powrotem). Na powyższym przykładzie jest to 16 ms.

DRUGI WIERSZ
loss: utracone pakiety; chodzi o dane, które zostały przeliczone i wysłane przez klienta lub serwer, ale z jakichś powodów nie dotarły do celu. Sporadyczny loss nie jest niczym dziwnym (tak działa transmisja UDP), ale jeśli utrzymuje się stale powyżej 0, powinniście pogadać ze swoim dostawcą internetu.

choke: odrzucone pakiety; dane, które z jakichś powodów nie zostały wysłane lub uwzględnione w symulacji danego ticka.
Choke może pojawić się po stronie klienta, jeśli ma mniej fpsów niż tickrate serwera (wtedy serwer wysyła więcej informacji niż wasz komputer jest w stanie przetworzyć) lub źle ustawione raty (za mała przepustowość do przesłania danych potrzebnych do obliczenia danego ticka); może też pojawić się po stronie serwera (jeśli X klientów przesyła tak dużo informacji, że serwer nie wyrabia się z przeliczaniem danych). Żeby odróżnić choke lokalny od serwerowego, trzeba spojrzeć na wartości wytłumaczone poniżej.

TRZECI WIERSZ
tick: ustalony tickrate serwera (ile razy na sekundę serwer analizuje przesyłane dane). W przypadku Kompanii jest to 128 TR, czyli 128 razy na sekundę - co 7.81 ms.

sv: czas, jaki serwer potrzebował na symulację ostatniej ramki (tick) - dokładniej tłumaczyłem to TUTAJ. Na powyższym przykładzie jest to 3.3 ms.

+-: odchylenie standardowe czasu, jaki serwer potrzebował na symulację ostatnich 50 ramek (ticków). Na powyższym przykładzie jest to 0.9 ms, co łącznie z wartością sv oznacza, że każda z ostatnich 50 ramek potrzebowała między 2.4 a 4.2 ms na symulację.

var: odchylenie standardowe precyzji mikrouśpienia serwera... generalnie chodzi o to, że serwer "śpi" między klatkami po to, by każdy tick symulować w równych odstępach czasu (gdyby serwer miał np. możliwość przeliczania 300 ticków na sekundę), a nie jeden po drugim. Na powyższym przykładzie jest to 0.130 ms, czyli 13 / 100 000 sekundy (13 setnych z jednej tysięcznej sekundy).

DODATKOWA MATEMATYKA
sv razem z +- powinno mieścić się w okresie jednej ramki (ticka), żeby zapewnić odpowiednią precyzję wyliczeń. W innym przypadku serwer nie nadąża z symulacją dla każdej ramki, przez co część z nich musi być odrzucona i pojawia się choke serwerowy. Dla TR128 wartość ta powinna być poniżej 7.8 ms.

Skoro już wiemy, że serwer na bieżąco raportuje swoją wydajność, możemy ocenić po której stronie występuje choke. Jeśli wartość choke rośnie, a sv i +- utrzymują się na niskim poziomie (łącznie poniżej 7.8 ms), choke najprawdopodobniej pojawia się u klienta. Jeśli sv i +- stoją wysoko (silnik sygnalizuje to zmieniając kolor wartości na żółty/czerwony), choke pojawia się po stronie serwera.
« Ostatnia zmiana: 29 Marzec , 2017, 20:56:08 pm wysłana przez Wilk »
Następujące brudaski postawiły mu browara Zico, Mrozo, gangrena, ~tylde?, AgentZlew, pawlo1, kontrol, DvD, Vredhny, Ariina

Offline Vredhny

  • klei sie od brudu
  • *****
  • Wiadomości: 256
  • Wypił browarów: 12
  • Brud/Czysty: +5/-21
  • Obserwowany
Odp: Netgraph - instrukcja
« Odpowiedź #1 dnia: 22 Luty , 2017, 09:31:41 am »
No okiej. Wszystko sie zgadza.


A czy bedziesz na tyle "mondralinski", zeby powiedziec jak ograniczyc skakanie varow srarow?

Pomijajac aktualizacje volvo, ktore czasem uniemozliwiaja gre bez naprawy z ich strony na serwerach 128tr:D

Offline Wilk

  • Moderator
  • śmierdzący zgnilizną brudas
  • *****
  • Wiadomości: 5703
  • Wypił browarów: 367
  • Brud/Czysty: +653/-339
    • Status GG
    • Crudelis - oficjalna strona
Odp: Netgraph - instrukcja
« Odpowiedź #2 dnia: 22 Luty , 2017, 17:59:53 pm »
Są trzy scenariusze:

a) masz do dupy komputer - zmień go na coś, co nie wygląda jak kalkulator i wyprodukowano później niż trotyl na skrzydłach tupolewa. Przeskanuj w poszukiwaniu syfu, przerzuć grę na SSD, nie nagrywaj streamu na ten sam dysk co gra,
b) lipne łącze (zwłaszcza, jeśli skacze ci loss) - puść tracert/pathping i wklej do oceny,
c) ustaw dobre raty (zwłaszcza, jeśli skacze ci choke) - czasy "rate 128000" się skończyły. Ilosć danych, które przepycha do was serwer, potrzebuje szerszego strumienia. Ustaw rate 768432, zrestartuj grę i sprawdź, czy będzie lepiej.

Offline Vredhny

  • klei sie od brudu
  • *****
  • Wiadomości: 256
  • Wypił browarów: 12
  • Brud/Czysty: +5/-21
  • Obserwowany
Odp: Netgraph - instrukcja
« Odpowiedź #3 dnia: 22 Luty , 2017, 18:21:08 pm »
No chiba, zaden nie pasuje:D
Nie skacze mi codziennie, przewaznie po nowych aktualizacjach,

a- nie narzekam na kompa, bfy, wiedzminy, overwatche smigaja bez oporu, o bezpieczenstwo dba kaspersky, ssd swojego czasu zarezerwowany byl tylko dla cs go, gra zachowuje sie jak serwer w css, kiedy demka nie byly systematycznie usuwane, chyba bedziesz wiedzial o czym mowie, przed dluzsza giera usuwam wszystko cleanerem
b- lacze, swojego czasu mialem problem z loosem, przyzyczy zewnetrzne, teraz wszystko smiga, moge wkleic jak wroce do domciu w niedziele
c-ratow nie pamietam, ostatnio chyba Ci wklejalem komendy startowe, mimo wszystko zakladalem, ze kompania wymusza odpowiednie:D

Nie mam problemow z choke ani niczym innym, do tego kolorki pokazuja kiedy to wina serwera, na kompani sie to nie zdarza, problem jest tylko z var`em pomiedzy fpsami a pingiem, jako ciekawostke moge podac, ze wtedy na serwerze takiego cold`a zabic z awy sie nie da.

Czasem spadaja tez fpsy, ale blokowalem juz rozne opcje, 300,200,150 i jak mialby byc jazdy to byly. Ale cs chyba juz zawsze bedzie dla mnie zaskoczeniem, bf1 full ultra, super hiper hd i smiga bez problemu, overwatch gdzie w teorii mapa wieksza i dzieje sie "wiencyj" tez hula, nawet batman arkam asylum(czy cos), ktory w pierwszej wersji ciagnal 100000% mocy dawal rade, a kupowaty cs go czasem tnie:D

Mm`y z takimi skokami odpadaja, faceit jakos ujdzie, ale najlepiej smigalo sie na esea.

EDIT: Swojego czasu uzywalem jakiegos programu do nvidi, gdzie ustawialem sobie suwakiem pomiedzy jakosc-wydajnosc, przy maksymalnej wydajnosci, piardyliart fpsow, ale jak chcialo, to sie cielo gowienko:D
« Ostatnia zmiana: 22 Luty , 2017, 18:25:08 pm wysłana przez Vredhny »

Offline Wilk

  • Moderator
  • śmierdzący zgnilizną brudas
  • *****
  • Wiadomości: 5703
  • Wypił browarów: 367
  • Brud/Czysty: +653/-339
    • Status GG
    • Crudelis - oficjalna strona
Odp: Netgraph - instrukcja
« Odpowiedź #4 dnia: 22 Luty , 2017, 18:50:20 pm »
mimo wszystko zakladalem, ze kompania wymusza odpowiednie:D
Błędne założenie, bo już od paru lat nie ma skutecznej metody wymuszania ratów poprzez serwer. Dzięki, valve.


Nie mam problemow z choke ani niczym innym, do tego kolorki pokazuja kiedy to wina serwera, na kompani sie to nie zdarza, problem jest tylko z var`em pomiedzy fpsami a pingiem
var: odchylenie standardowe fpsów u klienta wyciągnięte na podstawie średniej z ostatnich 1000 ramek (ticków), mierzone w milisekundach. Przekładając na ludzkie - jeśli masz 100 fpsów i 10 var, to znaczy, że w ostatnich 1000 tickach twój komputer generował każdą klatkę w granicach 10 ms (10 / 1000 sekundy) względem czasu, kiedy powinien był to zrobić. Na powyższym przykładzie jest to 1.0 ms.


Czasem spadaja tez fpsy, ale blokowalem juz rozne opcje, 300,200,150 i jak mialby byc jazdy to byly. Ale cs chyba juz zawsze bedzie dla mnie zaskoczeniem, bf1 full ultra, super hiper hd i smiga bez problemu, overwatch gdzie w teorii mapa wieksza i dzieje sie "wiencyj" tez hula, nawet batman arkam asylum(czy cos), ktory w pierwszej wersji ciagnal 100000% mocy dawal rade, a kupowaty cs go czasem tnie:D
Bo Source jest tak sprytnie zaprogramowanym silnikiem, że większość obliczeń przerzuca na CPU. Możesz mieć i TitanX, ale jak masz słaby procesor, to i 50 fpsów na nim nie wyciągniesz.

Ale to tylko tak na marginesie, bo w twoim przypadku - podejrzewam - to nie ma związku ;) Grasz na pc, lapku? Jakaś aplikacja działa w tle, kiedy masz uruchomioną grę?

Offline Vredhny

  • klei sie od brudu
  • *****
  • Wiadomości: 256
  • Wypił browarów: 12
  • Brud/Czysty: +5/-21
  • Obserwowany
Odp: Netgraph - instrukcja
« Odpowiedź #5 dnia: 22 Luty , 2017, 19:42:37 pm »
PC.

I tu pojawia, sie chyba glowny problem, ze moze za duzo wymagam od tej gry. Gralem kupe czasu na lapku, mimo, ze to byl "ufok" to jednak lapciak, ustawienia low, rozdzialka tez nie za wielka.

Teraz na pc troche sie zmienilo, nawet byly czasy ze gralem na 3072x1728 [16:9](albo cos w ten desen) wszytkie detale na high i po odpowiednim ustawieniu myszy, smigalo jak ta lala. Prawie. Bo raz na jakis czas var szalal. I badz "mundry".

Patrzac na snaxow, pashow, olofow, leca na 800x600, detale low, wszystkie wygladzenia wylaczone, moze to jest lekarstwo? I tu jest troche kpiny, sprzet jesli nie kosmiczny(bo kosmos zmienia sie co chwile), to rzeklbym wybitny. I trza grac na niskich detalach... Pfffff

Ktos powie, ze leca 4:3 z przyzwyczajenia, ze wiekszy baniak, ze ciul wie jaka tam jeszcze przyczyna, ale nawet jesli trafi sie swiezak to przy 16:9 tez ma wszystko low...

Aplikacji w tle 0, jedynie zapora, wszystkie wargamingi, ubisofty wylaczone, swojego czasu nawet na offline siedzialem bo gdzies wyczytalem ze to moze pomoc. Guzik.

Psrawdzalem tez wykoszystywanie procesora podczas gry, mimo wysokiego priorytetu procek nie czul potrzeby uzywania wiecej niz 20 procent mocy w szczytowym zapotrzebowaniu.

Nie wiem o co kaman, kombinowalem duzo razy, sprawdzalem lacze, resetowalem ustawienia,wywalalem calego steama, wszystkie pliczki i plikusie i ciul. Parametry startowe rozne, nie korzystalem tez z odswiezania 144, no nic. Przychodzi dzien, ze sie kupsko tnie i nie idzie postrzelac hedow.

Offline Wilk

  • Moderator
  • śmierdzący zgnilizną brudas
  • *****
  • Wiadomości: 5703
  • Wypił browarów: 367
  • Brud/Czysty: +653/-339
    • Status GG
    • Crudelis - oficjalna strona
Odp: Netgraph - instrukcja
« Odpowiedź #6 dnia: 22 Luty , 2017, 21:47:40 pm »
1. uruchom perfmon
2. zestawy modułów zbierających dane
3. zdefiniowany przez użytkownika -> ppm -> nowy -> zestaw
4. nazwa dowolna, utwórz z szablonu
5. system performance
6. ppm na nowy zestaw - właściwości - warunek zatrzymania - całkowity czas trwania ustaw na jakieś 5 minut - ok
7. ppm na zestaw - uruchom
8. odpal grę i graj normalnie

Dobrze by było, gdybyś zebrał 2 zestawy - kiedy gra działa wg ciebie w porządku i kiedy tnie.

Raporty zapisują się do %systemdrive%\perflogs\System\Performance\

Jak będziesz miał oba pliki, podeślij mi je do analizy.
Następujące brudaski postawiły mu browara Vredhny

Offline wiciu

  • Administrator
  • śmierdzący zgnilizną brudas
  • *****
  • Wiadomości: 17095
  • Wypił browarów: 35
  • Brud/Czysty: +980/-661
  • Admin
    • G4Gwiciu
    • Mój stan Xfire
    • G4G -> Gracze dla graczy
Odp: Netgraph - instrukcja
« Odpowiedź #7 dnia: 22 Luty , 2017, 23:06:54 pm »
"atliczna rabota" wilku
Mogę to przekleić do poradników na G4G.pl ? z autorem odpowiednim ?

Offline Wilk

  • Moderator
  • śmierdzący zgnilizną brudas
  • *****
  • Wiadomości: 5703
  • Wypił browarów: 367
  • Brud/Czysty: +653/-339
    • Status GG
    • Crudelis - oficjalna strona
Odp: Netgraph - instrukcja
« Odpowiedź #8 dnia: 23 Luty , 2017, 06:46:01 am »
Śmiało ;)  Zaktualizowałem część o choke, żeby była bardziej precyzyjna.
« Ostatnia zmiana: 23 Luty , 2017, 06:52:47 am wysłana przez Wilk »

Offline gangrena

  • klei sie od brudu
  • *****
  • Wiadomości: 432
  • Wypił browarów: 48
  • Brud/Czysty: +187/-13
    • CSGO Docker
Odp: Netgraph - instrukcja
« Odpowiedź #9 dnia: 29 Marzec , 2017, 21:49:55 pm »
Poproszę o przyklejenie tematu.

btw. czy ostatnio Kompania ma jakieś problemy wydajnościowe? Co jakiś czas sv mi skacze do 25-30.

Offline Vredhny

  • klei sie od brudu
  • *****
  • Wiadomości: 256
  • Wypił browarów: 12
  • Brud/Czysty: +5/-21
  • Obserwowany
Odp: Netgraph - instrukcja
« Odpowiedź #10 dnia: 29 Marzec , 2017, 22:29:34 pm »
Nie sadze, zeby to byla wina kompanii. Ja skoki mam od wprowadzenia kanalow, badz pierwszej aktualizacji poprawkowej. Niby mi nie skacze do takich wartosci jak powiedziales, ale skacze. Faceit. Dm publiczne, czy jakis serwer spolecznosciowy.


Od jakiegos czasu widze jakies niebieskie alerty w konsoli. Nie wiem czy to powiazane, ale znajac volvo, wszystko jest mozliwe...


Edit. I znowu przerabiam ten sam schemat. Fajnie sie lupie, wydaje sie ze chodzi plynnie, co widac po fragach i baniach, raptem volvo wrzuca aktualizacje i sie syfi... karwasz barabasz.
« Ostatnia zmiana: 29 Marzec , 2017, 22:31:53 pm wysłana przez Vredhny »

Offline Wilk

  • Moderator
  • śmierdzący zgnilizną brudas
  • *****
  • Wiadomości: 5703
  • Wypił browarów: 367
  • Brud/Czysty: +653/-339
    • Status GG
    • Crudelis - oficjalna strona
Odp: Netgraph - instrukcja
« Odpowiedź #11 dnia: 30 Marzec , 2017, 06:47:33 am »
Poproszę o przyklejenie tematu.

btw. czy ostatnio Kompania ma jakieś problemy wydajnościowe? Co jakiś czas sv mi skacze do 25-30.
Nikt mi nic wcześniej nie zgłaszał, wczoraj jak grałem to też było ok.