मेले A1000 / A2000 पर ARM और ArchLinux पर लिनक्स में एक छोटा विषयांतर

सभी को नमस्कार।
यूट्यूब पर वीडियो को देखते हुए, एकल बोर्ड कंप्यूटर जैसे or A1000 या MK802 पर ubuntu कैसे चलाएं, मैंने फैसला किया कि मुझे प्रदर्शन के साथ कुछ करने की जरूरत है और उसी समय इस डिवाइस पर ArchLinux चलाएं, क्योंकि किसी कारण से, किसी ने अभी तक ऐसा नहीं किया है।

प्रदर्शन का मुद्दा


हम यह क्यों देखते हैं कि ARM और MIPS पर सभी डिवाइस इतनी धीमी गति से डेस्कटॉप सिस्टम के रूप में काम करते हैं? कारण कई हैं:
  1. सभी डिवाइस अलग हैं। कुछ आदेशों के एक सेट का समर्थन करते हैं, कुछ अन्य। कुछ में FPUs हैं, कुछ में नहीं। कुछ ARMv5, दूसरों ARMv6, दूसरों ARMv7
  2. संकलक के अपनाने।
  3. निर्माताओं की सुस्ती / निष्क्रियता।
  4. समर्थन की जटिलता और वितरक अनुरक्षकों की सुस्ती।


यदि x86 के लिए पहला व्यावहारिक रूप से कोई फर्क नहीं पड़ता, क्योंकि हर किसी के पास एफपीयू है और एक विशिष्ट प्रोसेसर के लिए अनुकूलन 5-10% से अधिक प्रदर्शन नहीं देते हैं, तो एआरएम उपकरणों में भारी वृद्धि हो सकती है, मेले के लिए यह कुछ ऐसा है जैसे एक अस्थायी बिंदु के साथ जटिल कार्यों पर 30% से 150% तक (जैसे) वीडियो डिकोडिंग)।
चूंकि वास्तविक उपकरणों के मेनलाइन कोर में व्यावहारिक रूप से कोई पूर्ण समर्थन नहीं है, लेकिन परीक्षण बोर्ड नहीं हैं, इसलिए हमें निर्माता से कर्नेल का उपयोग करने के लिए मजबूर किया जाता है, जो कि तीसरी शाखा होने पर अच्छा है। इसके अलावा, कर्नेल में परिवर्तन अक्सर बैकसाइड के माध्यम से किए जाते हैं, यही कारण है कि हमें कॉन्फ़िगरेशन मेनू में विकल्पों के बीच गुम निर्भरताएं मिलती हैं और उत्साही उपकरणों का उपयोग करके इन परिवर्तनों को अधिक हाल की गुठली में पोर्ट करने की असंभवता (यह, ज़ाहिर है, हर किसी के लिए नहीं है)।
वितरण रखवाले अतिरिक्त रिपॉजिटरी के लिए शक्ति, कंप्यूटिंग शक्ति और डिस्क स्थान को बर्बाद नहीं करना चाहते हैं, और बहुत लंबे समय तक उन्होंने एफपीयू अनुकरण के साथ या सॉफ्टफप के साथ सब कुछ संकलित किया है (आपको एफपीयू का उपयोग करने की अनुमति देता है, लेकिन अनुकरण के साथ संगत है, और एआरएमवी 5 के लिए अनुकूलन के साथ, लेकिन, लगभग एक साल पहले, जब कॉर्टेक्स-ए 8 जनता के पास गया, तो अनुरक्षकों ने इसके बारे में सोचा और हार्डवेयर फ़्लोटिंग पॉइंट के साथ सब कुछ संकलित करने का प्रयास करने का फैसला किया। इसलिए, उबंटू 12.04 पहला सामूहिक वितरण था जिसमें आर्मफ रिपॉजिटरी दिखाई दिया। यह एक बड़ी प्रगति है, केवल यह कॉर्टेक्स-ए 8 को 20% -40% की वृद्धि देता है, सॉफ्टफप की तुलना में, सभी अनुप्रयोग अब ARMv7 के तहत बनाए गए हैं, लेकिन यह पर्याप्त नहीं है।
आज, 3 वितरण हैं जिनमें हार्डवेयर फ़्लोटिंग पॉइंट के साथ रिपॉजिटरी हैं: आर्कलिनक्स-एआरएम, उबंटू और फेडोरा। क्योंकि मुझे आर्चलिनक्स बहुत पसंद है, मेरे लिए पसंद स्पष्ट है।

उपकरणों

"नियर बिना नीयन के पैकेज क्यों इकट्ठा करते हैं?" आप पूछते हैं:
ARMON7 बिना नियॉन इंस्ट्रक्शन के सेट (उदाहरण के लिए CuBox डिवाइस में Marvell Armada)
Cortex-A8 (ARMv7 + NEON, Allwinner A10 के साथ चीनी उपकरण: Mele, MK802, MiniX)
कॉर्टेक्स-ए 9 बिना नीयन (एनवीडिया तेग्रा 2 तोशिबा एसी 100 में)
नीयन के साथ कॉर्टेक्स-ए 9
यह ध्यान दिया जाना चाहिए कि कॉर्टेक्स-ए 9 में वीएफपी पहले से ही लगभग नीयन के रूप में तेजी से है, और नीयन अनुकूलन प्रदर्शन से अधिक ऊर्जा की बचत का मामला है।

क्या किया गया है?


CFLAGS:
march=armv7-a -mfloat-abi=hard -mfpu=neon -ftree-vectorize -mvectorize-with-neon-quad -mcpu=cortex-a8 -mtune=cortex-a8 -mthumb -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2

हार्डवेयर वीडियो त्वरण काम नहीं करता है।
यह स्पष्ट नहीं है कि क्या gles काम करता है, जैसा कि glxinfo का कहना है कि प्रत्यक्ष प्रतिपादन: हाँ, glxgears कताई कर रहे हैं, लेकिन किसी भी तरह वास्तव में नहीं। आप इसे सर्वर के रूप में उपयोग कर सकते हैं।

USB फ्लैश ड्राइव पर यह सब कैसे लिखें, लिंक पर पढ़ा जा सकता है:
www.cnx-software.com/2012/07/20/nightly-builds-for-allwinner-a10-u-boot-linux-kernel-and-hardware-packs

इंटरफ़ेस शुरू करने के लिए, ssh रूट / रूट पर जाएं और startx टाइप करें

यदि आपके पास मदद करने की इच्छा और अवसर है, तो आप आर्चलिनक्स से प्यार करते हैं और इसे ऑलविनर पर चीनी उपकरणों पर देखना चाहते हैं, कृपया मुझसे संपर्क करें।

और थोड़ी अधिक जानकारी: एंड्रॉइड के लिए XBMC में वीडियो त्वरण पर XBMC के साथ ऑलविनर काम कर रहा है। एक वास्तविक एसटीबी होगा, लेकिन अब किसी भी तरह कुछ भी नहीं है।

डाउनलोड: rghost.ru/39743296

Source: https://habr.com/ru/post/In146877/


All Articles