FPS टेस्ट
10 सेकंड तक चलता है और लगातार एनिमेट करता है।
कोई गेम या स्क्रॉल होता पेज कागज़ पर स्मूद लग सकता है, लेकिन हाथ में उतना ही अटका हुआ महसूस हो सकता है — औसत FPS ठीक उसी तरह के ड्रॉप्ड फ्रेम को छुपा देता है जो चीज़ों को झटकेदार बनाता है। यह मुफ़्त टूल आपके ब्राउज़र में ही 10 सेकंड की फ्रेम-टाइम माप चलाता है और वे आँकड़े दिखाता है जो असल में बताते हैं कि कोई चीज़ कैसा महसूस होती है: औसत FPS, 1% लो, फ्रेम-टाइम पर्सेंटाइल, jank काउंट, और आपके डिस्प्ले की अनुमानित रिफ्रेश रेट।
यह कैसे काम करता है
- बाकी भारी काम बंद करें. डाउनलोड रोकें, बाकी भारी टैब और ऐप बंद करें, और इस टैब पर फ़ोकस बनाए रखें — बैकग्राउंड लोड उन्हीं फ्रेम्स के लिए होड़ करता है जिन्हें यह टेस्ट माप रहा है।
- Start दबाएँ और इसे वॉर्म-अप होने दें. शुरुआती कुछ फ्रेम अपने आप हटा दिए जाते हैं; ये अभी-अभी शुरू हुई एनिमेशन के स्थिर होने के दौरान के होते हैं, इसलिए सही नमूना नहीं देते।
- बार और फ्रेम-टाइम स्ट्रिप पर नज़र रखें. आगे बढ़ती बार और उसके नीचे की स्ट्रिप वही चीज़ है जिसे टाइम किया जा रहा है — कोई दिखने वाली उछाल या स्पाइक असली ड्रॉप्ड फ्रेम है, डिस्प्ले की गड़बड़ी नहीं।
- 10 सेकंड की माप पूरी होने दें. टेस्ट ठीक 10 सेकंड तक चलता है ताकि 1% लो और पर्सेंटाइल किसी एक अच्छे या बुरे पल पर नहीं, बल्कि पर्याप्त फ्रेम्स पर आधारित एक स्थिर आँकड़ा बनें।
- अपना औसत, 1% लो और jank काउंट पढ़ें. औसत सबसे प्रमुख आँकड़ा है; लेकिन 1% लो और jank काउंट आमतौर पर यह ज़्यादा ईमानदारी से बताते हैं कि असल में अनुभव कैसा रहा।
- अनुमानित रिफ्रेश रेट से तुलना करें. आपके नतीजे को आपके डिस्प्ले की अनुमानित सीमा के हिसाब से आँका जाता है — 58fps एक 60Hz स्क्रीन पर शानदार है, पर 144Hz स्क्रीन पर सामान्य।
यह टेस्ट आपकी फ्रेम रेट कैसे मापता है
आपका ब्राउज़र जो भी फ्रेम बनाता है, वह requestAnimationFrame से होकर गुज़रता है — यह एक ब्राउज़र API है जो अगले रिपेंट से ठीक पहले आपके कोड को कॉल करता है और उसे एक सटीक टाइमस्टैंप देता है। यह टेस्ट लगातार आने वाले टाइमस्टैंप के बीच के अंतर को मापता है — वही अंतर असल, भौतिक समय है जो एक फ्रेम को आपकी स्क्रीन तक पहुँचने में लगा, और यह सिर्फ़ यह गिनने से कहीं ज़्यादा ईमानदार आँकड़ा है कि एक सेकंड में कितने फ्रेम आए।
- शुरुआती कई फ्रेम हटा दिए जाते हैं — अभी-अभी शुरू हुई एनिमेशन, टेक्सचर अपलोड और लेआउट के स्थिर होने की वजह से शुरुआती फ्रेम सही नमूना नहीं होते।
- कैनवस पर चलती बार और उसके नीचे की फ्रेम-टाइम स्ट्रिप, दोनों उसी टाइम की जा रही लूप के अंदर से बनाई जाती हैं — जो आप देख रहे हैं वही असल में मापा जा रहा है, कोई अलग से साथ चल रही एनिमेशन नहीं।
- एक रन ठीक 10 सेकंड तक चलता है — इतना लंबा कि कोई कभी-कभार होने वाला रुकाव न तो शोर में खो जाए और न ही किसी बहुत छोटे नमूने पर हावी हो जाए, बल्कि एक असली आँकड़े के तौर पर सामने आए।
औसत FPS बनाम 1% लो बनाम फ्रेम टाइम: हर आँकड़े का मतलब
एक अकेला औसत उतना नहीं दिखाता जितना छुपा देता है। कोई रन नौ सेकंड तक बिल्कुल स्मूद चले और एक सेकंड के लिए पूरी तरह अटक जाए, तो भी औसत एक ठीक-ठाक आँकड़ा दिखाएगा — इसीलिए यह टेस्ट एक की बजाय चार अलग-अलग आँकड़े देता है।
- औसत FPS: कुल फ्रेम को कुल समय से भाग देने पर मिलता है। पढ़ने में आसान, पर आसानी से भ्रामक भी हो सकता है, क्योंकि ज़्यादातर स्मूद हिस्सा थोड़े से खराब हिस्से को छुपा सकता है।
- 1% लो: सिर्फ़ सबसे धीमे 1% फ्रेम की औसत फ्रेम रेट। यह उस चीज़ के कहीं ज़्यादा करीब है जिसे आप असल में "रुकाव" के तौर पर महसूस करते हैं, औसत की तुलना में।
- फ्रेम-टाइम पर्सेंटाइल (p50/p95/p99): एक सामान्य फ्रेम को कितना समय लगा, बनाम सिर्फ़ सबसे खराब 5% या 1% फ्रेम को कितना समय लगा — इन दोनों के बीच का फ़र्क सीधे तौर पर स्थिरता (consistency) मापता है।
- jank काउंट: कितने फ्रेम को आपके डिस्प्ले के तय फ्रेम बजट से काफ़ी ज़्यादा समय लगा — यानी वे फ्रेम जिन्हें इंसानी आँख असल में एक झटके के तौर पर पकड़ सकती है।
वह रुकाव जिसे औसत FPS छुपा देता है, किस वजह से होता है
अगर औसत बिल्कुल ठीक हो, लेकिन 1% लो कम हो या jank काउंट ज़्यादा हो, तो यह लगभग हमेशा किसी बीच-बीच में होने वाली गड़बड़ी की तरफ़ इशारा करता है, न कि हार्डवेयर की किसी सीमा की तरफ़।
- बैकग्राउंड में चल रहे टैब और ऐप जो CPU/GPU के लिए होड़ कर रहे हों, खासकर वे जो खुद कोई रेंडरिंग या वीडियो डिकोडिंग कर रहे हों।
- ब्राउज़र में हार्डवेयर एक्सेलरेशन बंद होना, जिससे कंपोज़िटिंग का सारा काम अकेले CPU पर आ जाता है।
- पुराने या असंगत GPU ड्राइवर, खासकर किसी Windows अपडेट के बाद।
- लैपटॉप पर थर्मल थ्रॉटलिंग — अगर टेस्ट या गेम जितनी देर चले, रुकाव उतना बढ़ता जाए और ब्रेक के बाद ठीक हो जाए, तो यह गर्मी से जुड़ी समस्या का पक्का संकेत है।
- पावर-सेविंग मोड जो CPU/GPU की क्लॉक स्पीड सीमित कर देता है, यह बैटरी पर चल रहे लैपटॉप में आम है।
- ब्राउज़र एक्सटेंशन जो हर पेज में स्क्रिप्ट डालते हैं, जिससे हर फ्रेम पर एक छोटी पर असली लागत जुड़ जाती है।
ब्राउज़र आपकी रिफ्रेश रेट क्यों नहीं पढ़ सकता (और "अनुमानित" का क्या मतलब है)
कोई भी वेब API सीधे आपके डिस्प्ले की रिफ्रेश रेट नहीं देता — कॉल करने के लिए कोई navigator.refreshRate नहीं है। इसकी बजाय यह टूल इसे पेंट होने की रफ़्तार से अनुमानित करता है: जब फ्रेम सुचारू रूप से आते हैं, तो ज़्यादातर एक ही अंतराल के आसपास सिमट जाते हैं, और वही अंतराल लगभग निश्चित रूप से आपके डिस्प्ले का असली फ्रेम बजट होता है।
- उच्च भरोसा: ज़्यादातर फ्रेम एक स्पष्ट अंतराल की एक संकरी सीमा के भीतर आते हैं, जो किसी आम रिफ्रेश रेट (60/75/90/100/120/144/165/240Hz) से मेल खाता है।
- मध्यम या कम भरोसा: फ्रेम ज़्यादा बिखरे हुए होते हैं, या तो इसलिए कि टेस्ट में कुछ बाधा डाल रहा था, या इसलिए कि आपका डिस्प्ले शुरू से ही एक स्थिर रेट पर नहीं टिकता।
- "तय नहीं हो सका" जैसा नतीजा भी अपने आप में जानकारी देता है — इसका आमतौर पर मतलब है कि या तो टेस्ट बीच में रुक गया, या आपका पैनल एडेप्टिव सिंक इस्तेमाल करता है (नीचे देखें)।
एडेप्टिव सिंक: G-Sync, FreeSync और VRR
वेरिएबल रिफ्रेश रेट (VRR) — जिसे NVIDIA G-Sync, AMD FreeSync या सीधे "एडेप्टिव सिंक" के नाम से बेचा जाता है — जानबूझकर आपके डिस्प्ले के रिफ्रेश अंतराल को उससे मिलाता रहता है जो आपका GPU बना रहा है, बजाय इसके कि एक तय रेट पर टिका रहे। यह एक असली फ़ीचर है, कोई खराबी नहीं: इसे खासतौर पर इसलिए बनाया गया है कि अस्थिर फ्रेम रेट भी ज़्यादा स्मूद महसूस हो, क्योंकि यह GPU के आउटपुट और डिस्प्ले के तय शेड्यूल के बीच की असंगति को हटा देता है।
VRR पैनल पर, इस टेस्ट का रिफ्रेश-रेट अनुमान अक्सर, सही तरीके से, कम भरोसे वाला नतीजा देगा — क्योंकि कोई एक तय अंतराल पकड़ने के लिए है ही नहीं, चूंकि आपका डिस्प्ले किसी एक पर टिकता ही नहीं। यह टेस्ट की कोई खराबी नहीं, बल्कि उसका सही तरीके से काम करना है। इससे ऊपर दिए गए फ्रेम-टाइम आँकड़े (औसत, 1% लो, jank) इससे प्रभावित नहीं होते और हर हाल में उतने ही मायने रखते हैं।
आम समाधान: हार्डवेयर एक्सेलरेशन, केबल और रिफ्रेश-रेट सेटिंग
- Windows: Settings → System → Display → Advanced display में जाकर पक्का करें कि रिफ्रेश रेट असल में आपके पैनल की अधिकतम सीमा पर सेट है — नया ड्राइवर इंस्टॉल करने या नई केबल लगाने पर यह कभी-कभी चुपचाप 60Hz पर रीसेट हो जाती है।
- ProMotion (120Hz) वाला macOS: System Settings → Displays → Refresh Rate में जाकर देखें कि यह डायनैमिक/हाई-रिफ्रेश विकल्प पर सेट है, न कि तय 60Hz पर।
- अगर बाहरी मॉनिटर अपनी बताई गई रिफ्रेश रेट से कम पर चल रहा हो: केबल और पोर्ट मायने रखते हैं — हाई रेज़ॉल्यूशन पर हाई रिफ्रेश रेट के लिए DisplayPort या पर्याप्त नई HDMI वर्ज़न चाहिए, बॉक्स में मिली किसी भी केबल से काम नहीं चलेगा।
- ब्राउज़र में: पक्का करें कि आपके ब्राउज़र की सेटिंग में हार्डवेयर एक्सेलरेशन चालू है, और अगर jank बना रहे तो एक-एक करके एक्सटेंशन बंद करके देखें।
- लैपटॉप पर: टेस्ट करने से पहले उसे चार्जिंग पर लगाएँ और पावर प्लान को "बेस्ट परफ़ॉर्मेंस" पर सेट करें, क्योंकि बैटरी-सेविंग मोड एक आम, अनदेखी सीमा होती है।
यह टेस्ट क्या नहीं है
यह एक फ्रेम-टाइम डायग्नोस्टिक है, न कि कोई GPU बेंचमार्क या रिफ्रेश-रेट मापने वाला कोई समर्पित उपकरण। यह जानबूझकर किसी भारी 3D सीन को रेंडर नहीं करता ताकि आपके ग्राफ़िक्स कार्ड पर तुलनीय स्कोर के लिए दबाव डाला जाए, और यह यह दावा भी नहीं करता कि किसी समर्पित हार्डवेयर टूल की तरह आपके पैनल की सटीक रेट पढ़ लेगा — यह इसे पेंट होने की रफ़्तार से अनुमानित करता है, और हर जगह ईमानदारी से इसे अनुमान बताया गया है।
अक्सर पूछे जाने वाले सवाल
हर बार टेस्ट चलाने पर मेरा FPS नंबर क्यों बदल जाता है?
हर रन में थोड़ा-बहुत फ़र्क आना सामान्य है — बैकग्राउंड प्रोसेस, तापमान की स्थिति, और और क्या-क्या खुला है, ये सब हर बार थोड़ा बदलते रहते हैं। बड़ा उतार-चढ़ाव आमतौर पर किसी बीच-बीच में होने वाली गड़बड़ी की तरफ़ इशारा करता है जो संसाधनों के लिए होड़ कर रही है; बाकी टैब और ऐप बंद करके दोबारा टेस्ट करके देखें।
अच्छा FPS किसे माना जाए?
यह किसी तय आँकड़े पर नहीं, बल्कि आपके डिस्प्ले पर निर्भर करता है — 58fps एक 60Hz स्क्रीन पर शानदार है, पर 144Hz स्क्रीन पर सामान्य, इसीलिए यह टूल आपके नतीजे को किसी एक तय सीमा की बजाय आपकी अनुमानित रिफ्रेश रेट के हिसाब से आँकता है।
मेरी 60Hz स्क्रीन पर टेस्ट ठीक 60 की बजाय 58 FPS क्यों दिखाता है?
सैद्धांतिक अधिकतम से थोड़ा नीचे रहना पूरी तरह सामान्य है — कोई भी चीज़ गणितीय रूप से एकदम सटीक, अटल अंतराल पर नहीं बनती। असली समस्या का संकेत 1% लो और jank काउंट देते हैं, न कि औसत के आसपास की छोटी-मोटी घट-बढ़।
"1% लो" क्या है और यह औसत FPS से ज़्यादा क्यों मायने रखता है?
यह रन के सिर्फ़ सबसे धीमे 1% फ्रेम की औसत फ्रेम रेट है। ऊँचा औसत और कम 1% लो का मतलब है कि ज़्यादातर रन तो स्मूद रहा, लेकिन एक असली, साफ़ महसूस होने वाला रुकाव भी आया — ठीक वही चीज़ जिसे एक अकेला औसत आँकड़ा छुपा देता है।
क्या यह टेस्ट मेरे GPU का असली परफ़ॉर्मेंस माप सकता है?
सीधे तौर पर नहीं — यह मापता है कि आपका ब्राउज़र एक हल्की कैनवस एनिमेशन कितनी स्थिरता से बनाता है, जो ज़्यादातर आपकी डिस्प्ले पाइपलाइन और किसी भी होड़ लगाती लोड को दर्शाता है, न कि भारी 3D रेंडरिंग के तहत आपके ग्राफ़िक्स कार्ड की सीमा को। इसके लिए एक समर्पित GPU बेंचमार्क एक अलग, ज़्यादा भारी उपकरण है।
ब्राउज़र मुझे मेरे मॉनिटर की सटीक रिफ्रेश रेट क्यों नहीं बता सकता?
कोई भी वेब API इसे उपलब्ध नहीं कराता। यह टूल इसे इस बात से अनुमानित करता है कि फ्रेम असल में कैसे आते हैं, इसीलिए नतीजे को हमेशा एक भरोसे के स्तर के साथ अनुमान बताया जाता है, न कि किसी सीधी हार्डवेयर रीडिंग के तौर पर।
टैब बदलने या विंडो मिनिमाइज़ करने पर मेरा FPS क्यों गिर जाता है?
ब्राउज़र पावर और CPU बचाने के लिए बैकग्राउंड टैब को धीमा कर देते हैं, इसीलिए अगर टेस्ट के बीच में टैब बैकग्राउंड में चला जाए, तो यह रुक जाता है और दोबारा कोशिश करने के लिए कहता है — बैकग्राउंड टैब से मिला नतीजा बेमतलब होगा।
क्या यह टेस्ट मेरी बैटरी पर असर डालता है या डिवाइस को ज़्यादा गर्म करता है?
किसी भी और 10 सेकंड की एनिमेशन से ज़्यादा नहीं। यह एक साधारण 2D कैनवस बनाता है, कोई भारी 3D सीन नहीं, और माप की अवधि पूरी होते ही अपने आप रुक जाता है।
एक ही कंप्यूटर पर Chrome, Firefox और Safari अलग-अलग नतीजे क्यों दिखाते हैं?
हर ब्राउज़र का अपना कंपोज़िटर और शेड्यूलिंग तरीका होता है, और एक्सटेंशन, हार्डवेयर-एक्सेलरेशन की डिफ़ॉल्ट सेटिंग और अपडेट का ढर्रा — ये सब हर ब्राउज़र में अलग होते हैं। थोड़ा-बहुत फ़र्क सामान्य है, इसका मतलब यह नहीं कि कोई ब्राउज़र खराब है।
jank असल में क्या होता है?
एक ऐसा फ्रेम जिसे आने में आपके डिस्प्ले के तय फ्रेम बजट से काफ़ी ज़्यादा समय लगा — इतना ज़्यादा कि इंसानी आँख इसे स्मूद हरकत की बजाय एक झटके या रुकाव के तौर पर पकड़ लेती है।
यह टेस्ट पूरी तरह आपके डिवाइस पर ही चलता है — यह एक कैनवस एनिमेशन बनाता है और आपके अपने ब्राउज़र के फ्रेम को टाइम करता है। कोई भी फ्रेम डेटा, टाइमिंग या नतीजा कभी भी अपलोड, ट्रांसमिट या कहीं स्टोर नहीं किया जाता।