रास्पबेरी पाई पर वेब ब्राउज स्पीड की अड़चन कहाँ है?


23

रास्पबियन "मट्ठा" के साथ एक मॉडल बी 512 एमबी पाई पर, मैंने मिदोरी, क्रोमियम और आइसवीसेल की कोशिश की है। जब वेब पेज बड़ा हो जाता है, तो लोडिंग धीमी हो जाती है, भले ही मैंने इसे 1 गीगाहर्ट्ज पर ओवरक्लॉक किया हो। 1 गीगाहर्ट्ज सीपीयू वाले एंड्रॉइड फोन पर, वेब पेज लोडिंग बहुत तेज लगती है।

मैं जानना चाहता हूं कि पाई में अड़चन कहां है? क्या यह सीपीयू, या रैम साइज़, या अनसेलेरेटेड एक्स सर्वर है? क्या ब्राउज़र के लिए यह संभव है कि वह सीधे GPU का उपयोग कर सके ताकि इसकी गति बढ़ाई जा सके?


) यदि नहीं शायद अकेले कि एक पहलू का एक सा है ..., और अनुकरणीय एक 3.5 "480 x 800 स्क्रीन गाड़ी चला रहा है?
गोल्डीलॉक्स

एक वीजीए मॉनिटर को एचडीएमआई-टू-वीजीए केबल के माध्यम से प्रदर्शन के लिए उपयोग किया जाता है, और कॉन्फ़िगरेशन है hdmi_mode=35 1280x1024 60Hz... लेकिन मैं किसी भी सुधार को कॉन्फ़िगर करने के बाद नहीं देख सकता हूंhdmi_mode=9 800x600 60Hz
हेलो.व्जेक्स

इसमें कोई शक नहीं। मुझे लगता है कि टैप-आउट के पास इस प्रश्न का सही उत्तर है लेकिन मैंने आपके लिए एक विचार के साथ एक और जोड़ा।
गोल्डीलॉक्स

जवाबों:


15

यह रास्पबेरी पाई के काफी कमजोर एआरएम 11 सीपीयू और अनएक्सलेरेटेड एक्स सर्वर का संयोजन है। चूंकि यह जीपीयू द्वारा त्वरित नहीं है, इसलिए सीपीयू को सभी प्रतिपादन करना होगा; पाई में ARM11 कोर की तरह कुछ पर, यह पहले से ही कमजोर सीपीयू पर बहुत अधिक अतिरिक्त तनाव डालता है।

वास्तविक रूप से, जबकि htopपीयू पर मिडोरी को देखते हुए फेसबुक जैसी भारी वेबसाइट लोड होती है, मैंने देखा है कि एक्स प्रक्रिया को सीपीयू के 25% तक ले जाता है।

पाई में अपने एंड्रॉइड फोन में चिप की तुलना (यहां तक ​​कि ओवरक्लॉक किया गया) की तुलना करना वास्तव में उचित नहीं है। आपके फोन में 1 गीगाहर्ट्ज चिप शायद कॉर्टेक्स-ए 8 या ए 9 की तरह है, जो वास्तुकला के एआरएमवी 7 संस्करण का उपयोग करते हैं; इस प्रकार, वे ARM11 की तुलना में प्रति घड़ी चक्र के उच्च प्रदर्शन हैं, जो ARMv6 का उपयोग करता है।


जीपीयू ड्रॉ ऑपरेशन किस तरह के जीपीयू में तेजी ला सकता है?
Trismegistos

@Trismegistos रंगों के साथ क्षेत्रों को भरना। पारदर्शी पृष्ठभूमि के साथ परतों का मेल। फटी एड़ियाँ।
दिमित्री ग्रिगोरीव

14

यह पहले से ही सही जवाब है IMO, और मैं जो सुझाव दे रहा हूं, उससे शायद बहुत फर्क नहीं पड़ेगा, लेकिन यह जानना उपयोगी हो सकता है।

यदि आप सभी ब्राउज़र चलाना चाहते हैं, तो आपको डेस्कटॉप वातावरण भी नहीं चलाना होगा। एक फ़ाइल बनाएँ जो इस प्रकार है $HOME/.xinitrc:

#!/bin/sh

midori

यदि .xinitrc पहले से मौजूद है, तो इसे अस्थायी रूप से स्थानांतरित करें या कुछ और टिप्पणी करें। अब, startx(जाहिर है, आपको पहले से ही इसमें नहीं होना चाहिए - जीयूआई चलने के बिना कंसोल से ऐसा करें)। Voila, आपके पास सिर्फ ब्राउज़र है, कोई डेस्कटॉप नहीं है।

यह मेमोरी की थोड़ी सी बचत करता है, हालाँकि ब्राउज़र कमरे में अब तक हाथी है और Xorg सर्वर स्वयं (जो चल रहा है) एक बुनियादी lxde से बड़ा है (जो अब नहीं चल रहा है)। यदि आपके पास RAM में इतना लोड है कि आप स्वैप का उपयोग कर रहे हैं, तो यह प्रदर्शन को प्रभावित करेगा। उपरोक्त मिडोरी + नंगे एक्स <100 एमबी निवासी का उपयोग करता है free:

             total       used       free     shared    buffers     cached
Mem:        448708     242604     206104          0      82660     105156
-/+ buffers/cache:      54788     393920
Swap:       102396          0     102396

448708 - 393920 = 54788/1024 = 53.5 एमबी

यह 4 टैब के साथ खुला है। फिर, यदि आप इन्हें देखते हैं और देखते हैं कि आपकी रैम पूर्ण रूप से पास है, तो यह एक प्रदर्शन समस्या है। ध्यान दें कि राम पूर्ण न होने पर भी स्वैप का उपयोग करना सामान्य है , इसलिए इस बारे में चिंता न करें - कि स्वैप की गई सामग्री कम प्राथमिकता है।

प्रदर्शन वार के बारे में सोचने के लिए कुछ और, बफ़र्स और कैश का महत्व है । मैंने इन्हें कुल में शामिल नहीं किया, और ध्यान दें कि यह वास्तव में प्रतिबद्ध मेमोरी (लगभग दोगुना) से अधिक है। यह सामान्य बात है। यदि आप मेमोरी को प्रतिबद्ध सामग्री से भरते हैं, तो सिस्टम कम कैश और / या इसे स्वैप करने के लिए स्थानांतरित करेगा। किसी भी तरह से, कि एक प्रदर्शन में ख़राबी हो सकता है क्योंकि कैश जा रहा है है महत्वपूर्ण (यह सिर्फ नहीं महत्वपूर्ण या अपरिवर्तनीय आकार बुद्धिमान, इसलिए प्रतिबद्ध मेम स्टेट का हिस्सा नहीं है)।

दूसरे शब्दों में, आशा है कि आप चाहते हैं कि आपका प्रतिबद्ध राम 75% से अधिक नहीं है जो पी पर उपलब्ध है और शायद उससे कम है। यदि आप LXDE का उपयोग करते हैं और अन्य सामान खोलना शुरू करते हैं, तो आप जल्दी से उस तक पहुंचना शुरू कर सकते हैं।


5

अस्वीकरण : निम्नलिखित में संदिग्ध प्रभावों के साथ प्रयोगात्मक सुविधाओं का उपयोग करने का वर्णन है। प्रस्तुत प्रतिगमन और वास्तविक प्रदर्शन लाभ के लिए परीक्षण करना सुनिश्चित करें।

(स्पष्ट) ब्राउज़िंग प्रदर्शन को बेहतर बनाने के लिए आप कुछ Google Chrome / Chromium के झंडे के नीचे की कोशिश कर सकते हैं chrome://flagsप्रदर्शन के लिए प्रासंगिक कुछ झंडों की व्याख्या करने वाला एक लेख है । मैं यहां कुछ एकत्र करने की कोशिश करूंगा:

"ओवरराइट सॉफ्टवेयर रेंडरिंग लिस्ट" को सक्षम करके जीपीयू त्वरण को मजबूर करना , संभव कलाकृतियों की कीमत पर रेंडर करने के लिए GPU का उपयोग करेगा, भले ही ड्राइवर सफेद न हो। मुझे नहीं पता कि यह Pi के GPU के साथ कितना अच्छा काम करता है, हालांकि।

सभी पेजों पर GPU कंपोज़िट करने के लिए सभी परतों को स्क्रॉल करने के लिए GPU का उपयोग किया जाएगा। तो स्क्रॉलिंग प्रदर्शन को GPU- त्वरित परतों के बिना पृष्ठों पर सुधार करना चाहिए।

ताज़ा खिड़की का तिलक एक और संकेत होगा। यह टाइल्स को रेंडर करेगा और प्रत्येक को जल्द से जल्द अंतिम प्रदर्शन के इंतजार के बजाय तैयार होने पर प्रदर्शित करेगा। प्रभाव में, पेश किए गए ओवरहेड के कारण प्रतिपादन में अधिक समय लगेगा, लेकिन सामग्री तेजी से दिखाई देगी।

अलग थ्रेड में रेंडरिंग असिंक्रोनस तरीके से रेंडरिंग करेगा और इंटरफेस को रिस्पॉन्सिबल रखेगा। पेज को अभी भी रेंडर करते हुए आप स्क्रॉल कर सकते हैं।

GPU VSync को अक्षम करें , भले ही मॉनिटर ने उन्हें लोड किया हो या नहीं, प्रदान की गई सामग्री को अपडेट करेगा। यह असंगत प्रस्तुति की कीमत पर फ्रेम दर में सुधार करता है।

किसी भी स्विच को सक्षम / अक्षम करने के बाद, आपको सेटिंग लागू करने के लिए Chrome / Chromium को पुनरारंभ करना होगा। झंडे-पृष्ठ के नीचे स्थित बटन आपके लिए ऐसा कर सकता है।

आगे भी जा रहे हैं, कमांड लाइन स्विच का उपयोग क्रोम / क्रोमियम को अनुकूलित करने के लिए किया जा सकता है। पूरी सूची के लिए क्रोमियम कमांड लाइन स्विच की सूची देखें ।

--default-tile-widthऔर --default-tile-heightप्रत्येक पृष्ठ के प्रारंभिक प्रतिपादन को गति देने के लिए स्क्रीन आकार के एक अंश से मिलान करने के लिए सेट किया जा सकता है।


मैंने झंडे की कोशिश की Override software rendering list, GPU compositing on all pagesऔर Threaded compositingपाई पर, लेकिन कोई स्पष्ट सुधार नहीं हुआ। मुझे लगता है कि पीसी पर उन झंडे की कोशिश की, कोई सुधार भी लगता है।
hello.wjx

झंडे संपादित करने के बाद क्रोम को पुनः आरंभ करना सुनिश्चित करें। Override software rendering listएक WebGL डेमो खोलने के लिए परीक्षण करें । Threaded compositingस्क्रॉलिंग का परीक्षण करने के लिए जबकि एक बड़ा पृष्ठ अभी भी लोड हो रहा है।
बेंगट

मैं यहाँ क्या पढ़ रहा हूँ: chromium.org/developers/design-documents/… "थ्रेडेड कंपोज़िंग" का उपयोग करके पाई पर मदद नहीं करेगा - इसका केवल एक ही कोर है - और यह कितना बुरा हो सकता है, यह इस बात पर निर्भर करता है कि कितना महत्वपूर्ण है "ऑपरेटिंग [ वर्तमान प्रतिपादन राज्य की एक प्रति पर आईएनजी] " है।
गोल्डीलॉक्स

पृष्ठ लोड प्रदर्शन घट जाएगा, हाँ। लेकिन जावास्क्रिप्ट ब्लॉक नहीं करेगा और रेंडरिंग की प्रतीक्षा करेगा और पेज उत्तरदायी रहेगा। आप कुछ कथित प्रदर्शन के लिए कुछ उद्देश्य प्रदर्शन कर रहे हैं।
बेंग्ट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.