Hlavní stránka Hardware Grafické karty GPU kontra LCD: co je V-Sync, Buffering a jak to nastavit?
GPU kontra LCD: co je V-Sync, Buffering a jak to nastavit?
autor: Pavel Urbánek , publikováno 15.5.2014
GPU kontra LCD: co je V-Sync, Buffering a jak to nastavit?

V-Sync, fps, obnovovací frekvence, triple buffering nebo i G-Sync a Lightboost – řada technologií, které jsou různě provázány. Každý se alespoň s některými setkal, víme však, jak fungují? Máte příležitost nahlédnout do problematiky hlouběji a třeba i zjistit, že můžete své PC nastavit lépe! Dnes se podíváme na ty základní, které umí každé PC.


Na fórech a v diskuzích pod články nebo videi se můžete dozvědět různé zajímavé (a bezpochyby pravdivé) věci. Jedna z nich je tzv. urban legend o tom, že 60Hz monitor nezobrazí víc než 60 fps. Doufám, že po přečtení tohoto článku a použití selského rozumu si už nikdo ze čtenářů nemyslí, že to je pravda. Zajímavá otázka v tom případě je, kolik teda těch snímků (i jejich částí!) dokáže monitor zobrazit? Pro jistotu definujme hypotetické prostředí tohoto pokusu. Monitor má FullHD rozlišení, pracuje na 60 Hz, je připojen přes DVI kabel (single link), na GPU jsou vyřazené veškeré limity na fps a V-Sync je samozřejmě také vypnutý. Grafická karta a procesor nemají problém naspamovat miliony fps. Nehledíme na technická omezení na straně GPU a počítače obecně, zajímá nás pouze monitor a jeho připojení. Nebavíme se ani o tom, co člověk vidí, nebo nevidí.

GPU kontra LCD: co je V-Sync, Buffering a jak to nastavit?

Naše hypotetická situace by mohla být testována na nějaké výkonné kartě, aby bylo dosaženo opravdu vysokých hodnot fps.

Pořád zarputile trváte na tom, že 60 Hz znamená 60 fps a ani o pixel víc? Nebo vás zamyšlení nahlodalo a uvažujete o nějakých 120 nebo 144 fps? Nebo je to i víc – co třeba takové magické číslo 64800 fps… to už je pořádná rychlost! Někomu ani to nestačí. DVI Single link pro FullHD pracuje na frekvenci přibližně 140 MHz. Je teda konečný počet snímků a jejich částí okolo 140 milionů?

Vaše akademická i laická řešení neváhejte sdělit ostatním formou komentářů. Kdyby se našel nějaký troll a tvrdil, by že vaše oblíbená značka grafických karet by určitě takové fps nezvládla, tak ho prosím ignorujte – o tom toto zamyšlení není.



Tagy: v-sync  g-sync  triple buffering  double buffering  input lag  progaming  lcd  gpu  tearing  


 
Komentáře k článku
RSS
Pouze registrovaní uživatelé mohou přidat komentář!
15.5.2014 06:33:49   93.99.166.xxx 201
Tak pokud se k tomuto někdy zase přimotám, tak podobnejm trollům zkusím poslat odkaz na tento článek... mam ale pochyby, že jej stejně číst nebudou
15.5.2014 06:39:45   205.167.7.xxx 362
Teda, to muselo dát příšernou práci. … Přitom taková blbost, co?
15.5.2014 07:40:30   31.186.189.xxx 411
Ajta krajta, Pavle, skvěle napsáno, vysvětleno. Více takových "pitev"...
Díky
15.5.2014 07:41:04   194.50.240.xxx 271
Děkuji autorovi za podrobný rozbor této problematiky.
15.5.2014 07:46:35   31.130.168.xxx 161
Děkuji za perfektní vysvětlení problematiky. Jen si to budu muset asi přečíst ještě jednou, abych si vše dal do souvislostí.
15.5.2014 07:49:16   194.228.197.xxx 160
Tak dva roky zpátky jsem si z hecu naprogramoval jednoduchou 2D hru v javě, kde jsem běhal ve stylu Crimsonlandu a střílel duchy. Kvůli své lenosti jsem nehlídal FPS a jen nadával na to, jak ta grafika hučí...
Pak jsem zavedl měření FPS a vyvalil oči. Jeden a půl milionu cyklů obnovení obrazovky je fakt hodně. Klidně bych to mohl použít jako benchmark .
15.5.2014 16:06:46   88.102.74.xxx 50
Minimálně Tě můžu uklidnit, že nejsi jediný komu se to povedlo. Blizzard někdy po uvedení SC2 zjistil, že menu hru umí odpálit grafiky, protože nemá žádný limit FPS a generuje hodně drsnou zátěž.
15.5.2014 16:11:05   85.70.109.xxx 12
Nevím jak u vás, ale myslím si, že WoT nemá také limit FPS v menu hry. Moje grafika jede na 300 fps myslím - je už stará, ale vcelku mě to štve, že tam není (aspoň jsem ho nenašel) limit fps - v menu.
15.5.2014 08:12:48   85.71.106.xxx 305
"Jedna z nich je tzv. urban legend o tom, že 60Hz monitor nezobrazí víc než 60 fps."

Dovolím si tady s autorem nesouhlasit - předpokládám, že každý, kdo s tímto předpokladem pracuje, chce, aby ony snímky byly pokud možno kompletní, tudíž 60 celých snímků za sekundu je přesné. Nikdo nechce 120 FPS s tím, že každý snímek na obrazovce bude složený ze dvou.

Ano, pokud vypneme VSync, tak s dostatečně snímky z karty se můžeme na 1080p monitoru dostat na (1080 * 60) = uváděných 64800 FPS (i když v tomto případě spíš LPS - Lines per second), ale to už mi nepřijde jako rozumné uvažování, navíc by to mohlo vést k některým zajímavým problémům či efektům na monitoru (máznutí do strany zeshora dolů při pohybu myší).
15.5.2014 08:25:35   80.188.122.xxx 223
Rozbalit komentářPříspěvek byl automaticky zabalen pro velké množství negativních hlasů.
15.5.2014 08:58:44   199.64.72.xxx 1212
tento názor chápu, je to o preferenci - zda chceme častější update na obrazovce nebo ucelené snímky.

michodem tvrdit, že Nikdo nechce 120 fps na 60Hz panelu je nepravdivý, už jen kvůli mně, protože já chci více fps i za cenu tearingu, stejně tak uvažuje i početná skupina hráčů (vsync je neakcpetovatelný pro soutěžní hraní)
15.5.2014 14:54:47   77.104.235.xxx 31
A nejde to jeste dal? Pokud grafiga generuje opravdu sileny pocet snimku tak by se menili i data behem vycitani toho radku. Takze maximum je 1920*1080*60=124416000 zobrazitelnych fps (ze kterych se zobrazi alespon 1 pixel - ty co se mezitim zahodi se nepocitaji)
15.5.2014 14:56:01   199.64.72.xxx 04
Pracuje to po řádcích, ne po bodech z technických důvodů (kmitočet komponent, fyzické připojení bodů na výstup elektroniky)
15.5.2014 15:36:33   77.104.235.xxx 10
To ano, ale data toho radku se musi od nekud vycist. A pokud ignorujeme fyzikalni omezeni grafiky, a predpokladame ze je schopna do monitoru natlacit 2000 snimku behem te kratke doby co trva vycteni jednoho radku tak by monitoru menil data pod rukama a radek by byl slozeny z vice snimku.
15.5.2014 15:56:58   199.64.72.xxx 00
Rozumim teto uvaze, po pravde nevim, co by se stalo, ale predpokladam, ze jeden radek ma svuj maly buffer pro praci nad nim, ale je mozne, ze ani to tam neni. Kazdopadne muj predpoklad potvrzuje to, že tearing nevznika na polovině radku, ale vždy mezi radky (neviděl jsem vyfocený "schod" ve zlomu, ale je pravda, že to mozna neni jen videt)
15.5.2014 17:19:42   94.113.29.xxx 11
Tearing pouze po radku je zpusoben praci double bufferu, ktery se bez vsync prepina opravdu pouze mezi radky. Ale v zadani double buffer jako podminka nebyl, a pri single bufferu se pracuje nad jednou pameni takze by grafika byla shop menit data behem vycitani radku.
15.5.2014 19:29:46   89.176.146.xxx 01
jak by poznala gpu, ze ma pockat na konec radku pri vykreslovani na monitor aby flipla buffery? myslite, ze je tam nejaka zpetna synchronizace, takovy maly vsync?

ted uvazuji double buffer ne single, ten jsem mel v zdani vyloucit, protoze se nikdy nepouziva z pochopitelnych duvodu
16.5.2014 01:10:22   94.113.29.xxx 10
Grafika tlaci obraz do monitoru takze na poznani konce radku nepotrebuje zpetnou synchronizaci. Proste vycte a hotoveho buferu radek a posle monitoru a nez posle dalsi tak zjisti jestli nema hotovy snimek a preklopi buffer.


Zadani bylo na maximalni mozny fps monitoru bez technickeho omezeni gpu. Double buffer je technicke omezeni gpu (zabrani vypoctu dalsiho snimku dokud nebude odeslan aktualni radek a buffery se neprepnou)
15.5.2014 08:52:24   89.29.115.xxx 2021
V-sync je taková ta kravina, co se vždy musí vypnout pro bezproblémový chod hry :-D
15.5.2014 11:39:20   165.72.200.xxx 90
Ony jsou i jine hry nez FPS. Ony jsou i jine hry nez ultrablbe napsane.
15.5.2014 12:47:23   213.29.200.xxx 611
To říkaji ti co nemají dostatek výkonu na stabilní >60 fps...
15.5.2014 08:57:52   193.84.165.xxx 182
"DVI Single link pro FullHD pracuje na frekvenci přibližně 140 MHz. Je teda konečný počet snímků a jejich částí okolo 140 milionů?" To byla doufám otázka cílená k záměrnému zmatení čtenářů...

Pokud si vezmu, že jeden snímek má rozlišení 1920x1080(1920x1200), pak jeden obrázek má 2073600(2304000) obrazových bodů, tj. asi 2Mpix(2.3Mpix). Přenáší-li se data rychlostí 140MHz(tedy 140 miliónů obrazových bodů za sekundu), pak podílem 140MHz/2Mpix(2.3Mpix) zjistíme kolik se nám obrázků vejde do sekundy. A výsledek je .... tramtadadá ... 67.515(58.923) . To jsou ovšem čistá obrazová data, netuším jestli se neposílají ještě nějaká další např. kontrolní či pro komunikaci s monitorem, což by nám počet snímků snížilo, i když pravděpodobně zanedbatelně. Je ovšem jasné, že pokud změníme velikost snímku pak se změní i jejich počet v jedné sekundě, např. pro 1680x1050 to je 79.365 ...

Nakonec pár odkazů na oblíbenou encyklopedii
http://cs.wikipedia.org/wiki/Digital_Visual_Interface
http://cs.wikipedia.org/wiki/HDMI
http://cs.wikipedia.org/wiki/DisplayPort
15.5.2014 08:57:57   85.71.61.xxx 371
Moc fajn článek, který ukazuje na tuto problematiku. Problém ale je, že 90 procent lidí jsou slepý a to horizontalni rozpadání obrazu nevidí... Ve finale to jsou šťastní lidé
15.5.2014 10:23:14   109.81.211.xxx 23
No asi jsem ten slepej.. Za dobu co hraju jsem si vědomě nikdy žádnýho tearingu nevšiml (nepochybuji, že se mi někdy u hry objevil, ale nezachytil jsem to..)

jinak super počtení, ale budu si to muset dát za chvíli znovu, abych to všechno pochytil Díky!
15.5.2014 11:10:31   195.113.106.xxx 60
Měl bych dotaz na autora, pokud mohu a pokud bude vědět:

Proč hry bežící v režimu v okně (windowed) ukazují klidně i přes 100 FPS, ale na 60 Hz monitoru nedochází k tearingu?

Po přepnutí z okna na fullscrean je pak už tearing velmi patrný.

Dochází mezi hrou v okně a zbytkem systému k nějaké synchronizaci? Kolik FPS má vlastně běžné UI ve Windows?
15.5.2014 12:21:57   199.64.72.xxx 23
Plocha Windows běží v režimu V-Sync, takže i okno se hrou, je synchronizované (synchronizuje se celý monitor, není možné desynchronizovat jedno okno windows). To, že hra renderuje více než 60fps vypovídá o přítomnosti nějaké formy triple bufferingu.

V-Sync ve Windows lze vypnout (myslím, že stačí vypnout Aero) a pak je otázka
"Kolik FPS má vlastně běžné UI ve Windows?"
velmi zajímavá... sám jsem na to hledal odpověď už dřív a nenašel jsem nic.
15.5.2014 11:15:12   195.113.82.xxx 100
No bezva článek, plný technických detailů, ale nějak jsem nepochytil ten závěr a doporučení, nebo se chystá v dalším díle ?

Ve smyslu - jestli chceš tohle, nastav tohle, jestli máš tenhle monitor, nastav tohle .....

Já si to sice umím nastavit ke spokojenosti sám, ale hádám, že tak 90% lidí o tom moc povědomí nemá.

Jinými slovy, bez pořádného závěru a hlavně doporučení je ten článek jen pro pár technických nadšenců, zbytku nic praktického nepřinese.
15.5.2014 11:40:39   195.80.172.xxx 22
"Výhoda triple bufferingu je v tom, že snímková frekvence nespadne na polovinu obnovovací, ale na dvě třetiny, tzn. z 60 na 40."

Ako na niečo také pán autor prišiel?

Inak, či je s v-sync vyhodnejší double, alebo tripple závisí od konkrétnej situácie. Ak PC nezvláda dať tých 60fps, ale napríklad len 35-40fps, tak si človek volí medzi stabilnými a stutter-free 30fps (double), vs stutterujúcich 35-40fps (tripple).
15.5.2014 12:01:49   85.207.215.xxx 60
Já už s tímhle dělám pokusy dlouho, ale mám tip pro nevěřící že i FPS které monitor neumí zobrazit mají vliv na celkovou plynulost...stačí stahnout demo simulátoru Live For Speed (cca 130Mb). Tato hra na dnešních počítačí běži alespoň na 100 FPS bez vyjímky a můžete sami vyzkoušet že pro opravdu bezprostřední reakce je nutné více než cca 90FPS, s lockem na 60 hra působí trochu zpomaleně.

Ono prostě tohle je věc každého a tyhle limity jsou jen teoretické, ja to celé vnímám tak že minimem pro normální hraní je nějakých 25FPS a pak se tento limit mění podle typu hry...Counter Strike bych bez 100fps nehrál ale třeba Gothic 3 mi překvapivě nepřipadá trhaný ani při 25FPS...
15.5.2014 16:10:28   88.102.74.xxx 10
Yep s tím souhlasím, u lehce katastrofického BF4 je zásadní rozdíl mezi 60 a 100+ FPS. I když servery jedou na 10Hz.
27.5.2014 08:51:54   88.103.132.xxx 00
Řekl by jsem, že to má spíš něco společnýho s prodlevami mezi zobrazenými snímky (ten Stuttering) dobře to tu vysvětlovali v tomhle článku: https://pctuning.tyden.cz/hardware/graficke-karty/26385-podrobny-test-grafickych-karet-aneb-fps-neni-vsechno?start=2
15.5.2014 12:11:40   46.149.115.xxx 175
LCD běžící na 60Hz opravdu víc než 60fps nezobrazí - ať Urbaánek dělá, co dělá - fps je frame per second - tedy snímky za vteřinu - pro autora - a jeden nový řádek či pixel opravdu za frame označit nelze.
V té zobrazené střílečce s třemi částečnými snímky na obrazovce - střílíte podle toho spodního, středního, nebo horního ? Jaká je Vaše reakční doba ? Jaký je rozdíl v ms těchto "1/3" snímků ?
64800fps ? co by (pokud by to něco zvládalo vypočítat, protlačit do LCD a tento začít zobrazovat) se zobrazovalo na obrazovce ? 1 pixel ? genitální...
15.5.2014 12:16:16   85.70.230.xxx 81
K prvnímu se na 100% přidávám. Měl jsem to zde rozepsané, ale nakonec s vidinou další sáhodlouhé diskuze např. s Ethosem a jemu podobným jsem nad tím raději mávnul rukou a vyklikl se z PCT.
15.5.2014 12:30:33   199.64.72.xxx 411
Doporučuji pročítat článek opakovaně, třeba to pomůže

Jinak se zeptejte nějakého hráče, jestli pozná rozdíl mezi 60 fps a 200 fps na 60Hz monitoru a jaké nastavení preferuje. Pokud ten rozdíl pozná a navíc preferuje vyšší fps, jak je možné, že monitor nezobrazí více fps? Mimochodem v textu je dobře zmíněno, že se bavíme o částech snímků.
15.5.2014 12:35:41   84.242.74.xxx 192
Ale každá ta část snímku (třeba 970tý řádek) se na 60Hz monitoru bude updatovat vždy po 1/60s = stále budeme na 60Hz monitoru vidět 60fps i když tam bude grafika rvát 400. Akorát to bude hnusně rozkrájený.

Takový názor že 60Hz monitor zobrazí více než 60fps akorát neznalé lidi zmate.
15.5.2014 13:15:30   199.64.72.xxx 38
Monitor neupdatuje snímek najednou, ale postupně po řádcích. Pokud bu dodáme čerstvé řádky častěji, tak je prostě vykreslí a aktuální informace se v obraze (alespoň jeho části) projeví "okmažitě".

Položím tedy otázku lépe: kolikrát za vteřinu monitor dokáže zobrazit nové informace? Rozhodně víckrát než je jeho refresh rate.

Jinak vyšší fps pochopitelně zlepší i problémy s inputlagem atd.
15.5.2014 13:57:08   84.242.74.xxx 102
To je nesmysl!
Monitor od grafiky vždy získává celý snímek! To rozkrájení způsobuje grafická karta né monitor! Doporučuji znovu nastudovat jak to celé funguje.
Grafika je vždy synchronizovaná s monitorem (60Hz, 75Hz, 120Hz...). Rozkrájení snímku vzniká ve framebuferu grafiky.
15.5.2014 13:57:17   46.149.115.xxx 101
S vámi je debata jak s komunistickým učitelem - také máte svůj názor, taky blbej, ale stojíte si tvrdě za ním

píšete fps - takže jen 60 - jestli rozumíte slovu fps - pokud ne, nastudujte

https://pctuning.tyden.cz/hardware/monitory-lcd-panely/18123-dell-u2311h-e-ips-panel-za-velice-prijemnou-cenu?start=10
Jaká je cca odezva tohoto panelu ? - kolem 10ms - a to si běžný kupující často koupíp i horší - i TNka bývají stále někdy horší - Tedy - jakou maximální rychlostí se teoreticky může obnovovat obraz tohoto LCD, když dokáže změnit barvu pixelu za 10ms ??? Schválně, dokážete to spočítat ? Asi to je dost daleko od Vašeho hyperdupersupersci-fi 64800fps - zřejmě jenom 100fps - víc totiž ani teoreticky nezvládne - fyzicky to ten panel nedokáže - ale vy tam samozřejmě "zobrazíte" a budete spokojenější s 200fps jedoucí hrou dál blbněte lidi - internet je zde k tomu...
15.5.2014 14:13:39   199.64.72.xxx 46
Vysvětlete mi tedy, jaký smysl má 144Hz panel, když aplikujete vaši 10ms logiku.

Každopádně poslední kapitola byla zaměřena přesně na tento typ diskuze, nešlo o konkrétní situaci nýbrž o hypotetické prostředí jak je v textu zmíněno.

Každopádně jste moji myšlenku opět nepochopil. Jeden konkrétní bod se na 60Hz panelu obnoví opravdu jen 60× za vteřinu. Každopádně jeho "nastavení" neprobíhá ve stejnou dobu jako u ostatních, opět připomínám, že jak přenos po kabelu, tak zobrazení je postupné. Grafická karta tedy může naspamovat tisíce fps, a z každého se část opravdu vykreslí. To že bude obraz rozthrhaný na stovkách míst je věc druhá.
15.5.2014 14:31:04   84.242.74.xxx 64
Opakuji podruhé:
Grafická karta rozděluje snímek! Monitor ho získává vždy celý ve frekvenci podle refreshe.
15.5.2014 14:54:05   199.64.72.xxx 35
Grafická karta genereuje celé snímky, rozdělení snímků vzniká dvojitým bufferem. Po kabelu tak do monitoru necestuje jednolitý snímek, ale slepenec několik snímků do jednoho "složeného" snímku. Zatímco LCD vykresluje frame 1, tak je možné, že GPU dokončila 2. snímek, dojde k přehození bufferů a najednou se do monitoru posílá nová část. Nikdy není na grafické kartě snímek složený ze dvou nebo více snímků v jednom bufferu. Každý buffer obsahuje vždy právě jeden snímek.
15.5.2014 15:51:38   94.112.172.xxx 01
asi až teprve jsem to pochopil.

" Po kabelu tak do monitoru necestuje jednolitý snímek, ale slepenec několik snímků do jednoho "složeného" snímku."

Ten slepenec se zobrazí jako tearing? On se tedy udělá průměr změny nahromaděných snímků a ten se zobrazí na monitoru jako jeden snímek? Nebo se prostě s těch nahromaděných snímků vezme jen ten nejnovější (ty starší se tedy zahodí)a ten se vykreslí?
15.5.2014 16:09:46   199.64.72.xxx 51
Ten kabel si můžete představit jako nějakou hadici s trychtýřem, vy jako výstup GPU máte za úkol vylévat kyblíky vody různých barev (jednotlivé kyblíky představují buffery a barva v nich jednotlivé snímky) Na druhém konci hadice stojí někdo jiný (to je monitor), má před sebou velké plátno a hadicí je kropí od shora dolů a pak přejde na další. Mezi vámi a monitorem není žádná dohoda o tom, kdy se začne nalévat z jakého kyblíku, takže ten druhý kropí jednou barvou a za chvíli další, nemá možnost to ovlivnit. Přechody barev jsou zlomy v obraze.

Kolik barev se vleze do jednoho plátna? Hodně... takže v jednom plátně se reflektuje hodně různých kyblíků barvy - snímků.

Celé je to zjednodušené, ale snad si to jde představit.
15.5.2014 16:12:01   88.102.74.xxx 00
Jo přesně takhle vzniká tearing. Jak jinak?
15.5.2014 15:41:49   95.105.145.xxx 30
Počúvni ho Ache, v tom ako vzniká tearing má pravdu. V tom, že 60Hz monitor zobrazí viac fps ako 60 už nie. Výhoda je vtedy len v nižšom input-lagu (v preklade, znamená to aktuálnejšiu informáciu na monitore), a presne preto to tak majú progameri nastavené.
15.5.2014 16:00:33   84.242.74.xxx 70
Jo já to trochu blbě napsal. K rozdělení dochází ve framebufferu grafiky tím způsobem že to grafika za chodu změní když je nový snímek. Ale ten monitor si prostě jede na 60Hz a bere aktuální obsah framebuferu, takže k aktualizaci obsahu na obrazovce vždy dochází po 16,66ms = 60Fps = 60Hz... Nic to nemění na tom že během toho skenu se obsah změnil 100x kdy akorát se výsledný snímek roztrhá na několik pruhů... vždy aktualizace je po 60Hz = objekt sledovaný na obrazovce vždy bude mít plynulost 60fps!

Už aby se rozšířil ten G-Sync / FreeSync a nějaký tearing už zmizel navždy (pak se bude překreslovat nový smímek vždy když je hotový nový a nebude se čekat na pevný refresh).
15.5.2014 18:36:10   89.176.146.xxx 14
jake bude stari dat na monitoru pri 60 fps a dokonceni jednoho cyklu? 16,6 ms

a jake bude stari dat na monitoru pri 120 fps? cast bude 16,6 a cast bude pouze 8 ms

me prijde druha varianta aktualnejsi nez ta prvni, i kdyz nejsou vsechna data nova, tak nejaka cast je, nebo s tim nesouhlasite?

znovu... kolikrat za vterinu se tedy muze monitor zobrazit nova data (i kdyz neuplna, jak je zmineno v zadani zvyrazneno vykricnikem)? 60 to neni...
15.5.2014 18:51:01   95.105.145.xxx 41
Prepáčte, ale tá otázka je vyslovene "krepá". Odpoveď ste už dostali, a áno, je to 60 (v prípade 60Hz monitoru). Každé miesto (pixel) sa totiž zmení na nový presne toľko krát. Že rôzne pixely (alebo riadky keď chcete) pochádzajú z rôznych časov na tom nič nemení.

Že preferujete tearing je vaša osobná záležitosť a tiež to na tom fakte nič nezmení. Chápem princíp, ktorým obhajujte tých 200fps, ale je to... "krepý princíp". Podľa toho krepého princípu je to teda toľko, koľko má riadkov, ale s praktickosťou to nemá nič spoločné.
15.5.2014 19:26:53   89.176.146.xxx 32
ja samozrejme nikomu neberu 60 fps, je potreba si uvedomit, ze i pri 60 fps na 60 hz panelu se vam obraz bude trhat, pokud nezapnete vsync nebo jinou formu synchronizace. je pak docela jedno jestli to bezi na 60 fps nebo 200 fps... naopak pri 200 budou ty zlomy predstavovat mensi odskoky v obraze, nicmene castejsi.

nebo si myslite, ze pri 60fps se to nejak samo "magicky" sesynchronizuje?

kazdopadne cela tato uvaha vede k tomu, ze se demonstruje fakt, ze i pri vyssich fps nez je refresh rate se neustale snizuje zpozdeni mezi vstupem (mysi) a vystupem (lcd)
15.5.2014 19:54:37   95.105.145.xxx 10
Nie, nemyslím si, že sa to synchronizuje. Ale zlom (tearing) bude pri 60fps a 60Hz na jednom stabilnom mieste a výsledok bude stutter-free, skrátka plynulý. Pri 200fps tam stuttering bude, hoci získate pár milisekúnd na "aktuálnosti". Moja preferencia je stutter-free.

O znižovaní input-lagu s rastúcim fps sa tu predsa nikto neháda, snáď som už na začiatku napísal, že presne preto to tak progameri nastavujú. Nie preto, lebo vidia 200fps na na 60Hz monitore. Je to skrátka jediná cesta, ako dosiahnuť cieľ, hoci technicky by sa to dalo riešiť aj oveľa elegantnejšie, bez nutnosti vysokých fps.
15.5.2014 20:43:41   89.176.146.xxx 11
ja si myslim, ze co se tyce vidi/nevidi 200 na 60 si akorat nerozumime v tom, co kdo povazuje za vidi a nevidi, nicmene s tim, ze pri 200 je stutter a pri 60 ne nesouhlasim... situace je uplne stejna, nikde nic neceka, snimky se proste sypou ven a monitor je po castech zobrazuje.

to, ze je zlom "stabilnejsi" pri 60/60 je pravda, dle me zkusenosti je to ale vizualne horsi. je totiz patrny jak postupne cestuje nahoru nebo dolu, podle toho zda se fps zvysuji nebo snizuji - neni totiz realne mozne docilit perfektnich casu jako je 60.0000, vzdycky to bude kolisat a tak zlom jezdit po obraze.
16.5.2014 07:27:06   195.80.172.xxx 30
Ale samozrejme že si rozumieme.

Ad 200fps stutter: Tak to prepáčte, nesúhlasiť síce môžete, ale nemáte pravdu. Keď to na monitore nevidíte, tak si to nakreslite. Síce sa na nič nečaká, ale stuttering tam bude, hoci nebude fullscreen. Pri 200fps a 60Hz monitore totiž niektoré pruhy budú updatované po troch snímkoch, iné po štyroch, pričom ich poloha nie je stabilná ale "behajú" po obrazovke. Nazvime to part-screen-stuttering napríklad.

Či je stabilný zlom vizuálne horší, alebo lepší je vec názoru. Oproti part-screen-stuttering si ja volím radšej stabilný zlom. A samozrejme že či cestuje alebo nie bude závisieť na konkrétnej hre, takže slová ako "neni realne mozne" si radšej schovajte. V CS1.6 to bolo celkom dosť stabilné (myslené relatívne, samozrejme že dokonale stabilný nie je), a práve tam som toto riešil. Zvolil som 75fps a 75Hz bez v-sync, lebo plynulosť bola pre mňa dôležitejšia než o cca 3,4ms novšie niektoré časti obrazu pri 100fps.

Keby bolo dostupné iné riešenie zníženia input-lagu ako vysoké fps, progameri by volili to, lebo naozaj 200fps nevidia na 60Hz monitore.
15.5.2014 21:28:35   88.101.25.xxx 81
Tak ano uvažujme že se přesuneme rychle okem po obraze na jinou část... a třeba tato část obrazu bude o 8ms mladší proti té předchozí, ale další snímek bude zase za 16,6ms na tom samém sledovaném místě, A stále při sledování toho jednoho bodu to bude 16ms - 16ms - 16ms navždy! Teda pokudud grafika bude stíhat dávat aspoň těch 60+fps.

To že vyšší fps než refresh sníží inputlag je logické o tom snad tahle debata není. Ale nikdy, ale opravdu nikdy tento lag nebude nižší než lag způsobený čekáním na s refresh = při 60Hz 16,6ms(když úplně vypustíme zpracování obrazu elektronikou a samotnou odezvu)

Neúplná data nikoho nezajímají, protože při hraní snad sleduji nějaký bod (třeba u stříleček postavu na zaměřovači). A ten se bude na 60Hz monitoru aktualizovat vždy po 16,6ms časových úsecích i když mi tam bude grafika rvát milion fps...

Takové uvažování o neúplných datech je fakt na blbost, protože v reálu stejně bude jedno místo obrazu aktualizováno po 16ms a další místo také a další také... pouze v jednom časovém úseku se budou na různých místech obrazu odehrávat jiné snímky z jiných časů... ale pod 16ms proti předchozímu zobrazení toho samého místa opravdu nikdy nedojde.

Pokud si tento refresh-rate lag chceme snížit, jedinou možností je zvýšení frekvence refresh-rate (třeba ten 120Hz monitor). Zvýšením fps grafiky se pod 16,6ms (60Hz) nikdy nedostaneme.

Fakt masakr. Takový práce si dát s článkem a pak to zabít Urbánek legendou o 60Hz displeji.

Už sem od autorů na PCTuningu viděl hodně (pctuning znám od jeho vzniku), ale tohle... tohle sem ještě neviděl. OBR hard.
16.5.2014 05:11:46   89.176.146.xxx 35
Já nevím jak vy, ale obraz na monitoru nesluduji po částech, ale celý. Není potřeba někam přesouvat pozornost. Jde prostě a jednoduše o statistiku stáří dat na monitoru. Pokud to tam nevidíte, tak vám to nikdo nebere. V případě 60/60 je průměrné stáří 16ms, v případě 60/max je to cca 8 ms.

Jestli tento rozdíl jde poznat nebo ne nebylo součástí otázky. Z mého pohledu statistických 8ms k dobru je fajn.

Propblém nepochopení vidím v tom, že jsem nevysvětlil fundamentální rozdíl principu GPU a LCD v čase. Zatímco GPU dokončí snímek v jeden okamžik (moment, kdy se přehodí buffer), tak LCD pracuje +- kontinuálně. Pravidelný takt 16---16---16... to sice řídí, ale data se sypou na obrazovku ve stylu 111111...
16.5.2014 10:22:57   84.242.74.xxx 51
Problematiku v-sync už dávno chápu od jiných autorů co se tím zabývali. Ale s takovým nesmyslem sem se ještě nesetkal. Ok nechám vás při tom že na 60Hz dokážete 6000fps a pomůže vám to v plynulosti a já vám garantuji, že na další články už klikat nebudu.
Nazdar!
15.5.2014 18:55:06   95.105.145.xxx 30
Ache, je ti dúfam jasné, že s G-Sync/F-Sync pribudne problém, že rôzne časy renderu medzi jednotlivými snímkami sa premietnu aj do nerovnomernosti času ich zobrazenia. Ak si vývojári/engine/drivery túto vec nepostrážia, nebude to veľký pokrok.
15.5.2014 21:49:36   88.101.25.xxx 30
Ano je mi to jasné, ale teď tu nerovnoměrnost máš přece v rámci jednoho sledovaného místa také ;-)

Ale G-sync/free-sync bude refreshovat vždy celý obrázek jakmile bude hotový, takže se zbavíme tearingu jednou pro vždy. Větší otázka je jak bude řešen overdrive, protože pokud bude nějaká scéna na 100fps a další na 50fps, tak těžko bude monitor dávat stejný výkon v odezvě na obou refresh rate - to bude muset také být řešeno dynamicky. Z toho spíš mam strach, protože já sem na overdrive fakt alergickej viz. fórum a můj podpis.

Každopádně ono by se to dalo i nějak hezky vyladit (frame pacing / frame metering) aby ty snímky byly bez microstutteringu, ale to by zase zbytečně zvyšovalo lag. To oveří až zkušenosti lidí, ale vyhlazení snímků (redukce microstutteringu) se už na grafikách také řeší..
15.5.2014 17:19:02   188.75.185.xxx 41
ach jo... tak znovu těžká matematika...
Jako znalec problematiky,,, určitě víte, že jsou i monitory, které zvládají odezvu cca 5ms (a výjimečně i rychlejší- reálně, ne jen dle specifikací) - a kolik je 5ms na Hz ??? LCD s takto rychlým panelem tedy dá teoreticky 200Hz/fps - nebo máte jinou logiku ? Ale většina uživatel má prostě mizerné 60Hz panely, kde se prostě zobrazí jen 60celých fps - k čemu je třetina obrazu z jiného snímku ?
15.5.2014 14:58:25   93.99.226.xxx 50
Pěkný článek, hezky vysvětlené ... až na tu poslední kapitolu, kde IMHO pro stromy přestáváte vidět les.
To jak mícháte FPS pro celý obraz a části obrazu je trošku matoucí. Ano, 60hz LCD dokáže ukázat více obrazů než 60, otázka je o kolik, a co lze ještě považovat za obraz (použitelnou informaci).

- pokud mi GPU pošle pro každý řádek jiný frame, je to k něčemu ? Můžu to počítat jako vyšší obnovovací frekvenci ? Podle mě ne.

- jak často dokáže pixel změnit barvu pro 60 hz LCD ? Dost složitá otázka, vzhledem k tomu, že to je dynamický děj (neprobíhá skokově, ale v čase), a záleží na tom z čeho na co měním (černá=>bílá nebo 2 odstíny šedé, a to neřeším RGB skládání barev, kde každý subpixel může být jinak rychlý).

Popravdě řečeno tato otázka nedává vůbec smysl, a nelze na ní tedy odpovědět.
"Pořád zarputile trváte na tom, že 60 Hz znamená 60 fps a ani o pixel víc?"
(a nezapomněl jste přidat ještě nějaká koťátka ?)

A tato věta "Je teda konečný počet snímků a jejich částí okolo 140 milionů?" zase ukazuje na nevyjasněnost dotazu snímků nebo(!) jejich částí.

A když už pokládáte takto problémové dotazy, zkuste alespoň dodržovat základní pravidla slušnosti, a hned neosočujte diskutéry (debata jak s komunistickým učitelem).

Pro odlehčení:
https://www.youtube.com/watch?v=G77yQdPkm-4
15.5.2014 15:14:36   199.64.72.xxx 25
Nevím jestli reagujete na moje komentáře nebo na khorghan, protože sice jsem konec článku včetně provokativního dotazu psal já, ale o komunisty jsem nezmiňoval

Opět ale připomínám, že jde o hypotetický případ i otázku. Pokud by vám někdo dal zadání slovní úlohy ve smyslu já mám pět hrušek a ty tři, kolik máme dohromady? tak mu neřeknete, že to je nesmysl, protože vy přece hrušky nejíte...
15.5.2014 19:29:47   93.99.226.xxx 30
Reakce byla na khorghan (ale měl jsem pocit, že to je váš komentář) ... sorry, moje chyba, že jsem si špatně přečetl, kdo to psal ... ten diskuzní systém není nejpřehlednější (to mě ale neomlouvá ;o).

Ale za závěrem si stojím: článek dobrý, až na tu poslední kapitolu. Jinak 5+3 hrušky sečíst jde (byť jde o hypotetickou situaci), ale míchat v dotazu dohromady několik různých pojmů (Hz, FPS, pixel) není dobrý nápad. To pak dostanete jen hospodskou diskuzi, kde bude mít každý svojí pravdu (a popravdě jí mít mže, protože si vybere vždy určitou část myšlenky).
15.5.2014 16:13:32   88.102.74.xxx 05
Zpoždění panelu nemá vůbec žádný vliv na počet snímků za vteřinu. To znamená jen tolik, že panel prostě vykresluje se zpožděním, ale kdyby byl třeba 120Hz, tak může byť se zpožděním klidně vykreslit těch 120 FPS.
15.5.2014 16:20:13   85.70.230.xxx 50
Nemá vliv? Zajímavé. A co se asi stane, když bude refresh obrazu posílaného elektronikou(tedy v podstatě převodníku) rychlejší než je "reakce"/setrvačnost tekutých krystalů v panelu..?(popř. stejná, či lehce pod)
15.5.2014 12:53:08   195.80.172.xxx 60
Hráč spozná rozdiel vďaka zníženému input-lagu. To rozhodne nie je to isté, ako že "60Hz monitor zobrazí viac ako 60fps".

Ak by mohol mať taký nízky input-lag bez roztrhania snímkov, určite by volil tú možnosť, lebo ak fps>refresh_rate, tak sa bude vďaka tearingu jednať o stuttering, aj keď nebude fullscreen, ale na premenlivých častiach monitora.
15.5.2014 13:09:41   194.228.197.xxx 90
Především u starších her, ale i u mmnoha novějších je grafický engine úzce svázán s fyzikálním enginem a enginem rozhranní. Především u her využívajících jedno jádro procesoru nastává situace, kdy procesor po výpočtu předchozího snímku zkontroluje buffer síťovky, zkontroluje buffer uživatelského rozhranní, provede přepočet drátového modelu a pak pošle data grafice a čeká.
Jinými slovy - pokud máte 10 fps, pak vám teoretická latence připojení stoupne až o sto milisekund, stejně jako reakce myši a klávesnice. Čím větší máte FPS, tím častěji se uživatelské rozhranní a síťovka zpracovává a tím je pohyb plynulejší. Takže vyšší FPS v těchto hrách má smysl i tehdy, když překonáte 60 FPS, protože i když monitor nedokáže ukázat víc, hra má pro vás plynulejší průběh.
15.5.2014 16:14:49   88.102.74.xxx 25
..poznatek. Pokud máte 60 Hz a chcete jakž takž plynulou hru, zkuste z ní vyždímat minimálně 120 FPS. Je mi vcelku jedno proč a jak to funguje, ale prostě to funguje..
15.5.2014 18:14:32   109.81.212.xxx 40
Megazjednodušeno :-) Každý svého štěstí strůjce, alias každému nastavení V-sync po chuti. Co se týká mne, tak bych opravdu za frame nepovažoval půlsnímek, natož pak pixel z jediného řádku. Jinak osobně jedu u fps věcí na 60hz monitoru bez V-sync a na co největší fps. Až se mi ale někdy zasteskne po 100Hz 20KG sklince která neměla s rychlostí problém a V-sync mohl bejt na 100Hz zaplej na nádheru. Jen kdyby mi to tenkrát zvládala grafika:-)
16.5.2014 07:02:47   77.104.247.xxx 80
Vaše úvaha o vykreslovaných fps překračujících obnovovací frekvenci monitoru je založená na mylné interpretaci fps. Ta zkratka značí frame(s) per second jestli to nevíte. Frame je označení celé plochy obrazu... ne části. Když půjdete do obchodu pro tři kuřata, tak asi nebudete očekávat, že dostanete jedno křídlo a dvě stehna s tím, že to jsou vlastně tři částečná kuřata.
16.5.2014 09:03:39   77.104.235.xxx 04
Fps je pocet vypoctenych framu. Ty se vypocitali cele, jen je monitor nedokaze zobrazit. Monitor a jeho obnovovaci frekvence nema na fps vubec zadny vliv (bez vsync)
Kdyz jdu do obchodu pro 3 kurata koupim 3 kurata. Problem je ze v tasce mam misto pouze pro jedno, tak si ze 3 kurat vezmu kousky a spokladam si jedno ktee si odnesu. Popripade vim ze muzu odnest pouze jedno tak koupim pouze jedno (vsync)
16.5.2014 08:58:31   62.44.4.xxx 14
Pěkný článek
19.5.2014 10:57:01   151.88.22.xxx 00
Vitenuto napsal:
Nevím jak u vás, ale myslím si, že WoT nemá také limit FPS v menu hry. Moje grafika jede na 300 fps myslím - je už stará, ale vcelku mě to štve, že tam není (aspoň jsem ho nenašel) limit fps - v menu.


Taky jsem si všiml,že grafika hučí v menu jak piliňák
19.5.2014 19:38:00   195.168.70.xxx 10
Vtip je v tom ze optimalne FPS generovane stabilne v nasobkoch refreshu LCD.
Priklad v COD4 na mid/low mam FPS 240 stable furt. 60hz LCD zobrazi 4x pomalsie=kazdy 4 snimok.Stratim 3 snimky ale zase uvidim o zlomok sekundy skor hraca ktoremu FPS kolisu od 30-120 FPS a ma k tomu zapnuty doubble/triplle buffer a nedajboze aj VSYNC. Pri stabilnych 60 hz zarovnanych s kazdym 3 framom chybajuce snimky nepostrehnem. Hra sa zda plynula ale akoby zrychlena. Vyzaduje si to samozrejme aj dobry ping,nizky input lag atd.
O 120 nebo 144 Hz LCD zacnem uvazovat az neskor ked budu standardom za prijatelnu cenu G-sync GPU aj monitory a ked zozeniem internet s pingom pod 25ms.
19.12.2014 15:00:47   62.209.192.xxx 30
Přidám jeden poznatek. Pokud zapnete V-sync, sníží se výrazně spotřeba GPU u nenáročných her. V mém případě třeba i o 70 Wattů, což už může být pro někoho na zváženou.
Zjevně grafika počítá jen 60 fps a nemusí používat celý svůj výkon.

Redakce si vyhrazuje právo odstranit neslušné a nevhodné příspěvky. Případné vyhrady na diskuze(zavináč)pctuning.cz

122 čtenářů navrhlo autorovi prémii: 56.2Kč Prémie tohoto článku jsou již uzavřené, děkujeme za váš zájem.
Tento web používá k poskytování služeb soubory cookie.