क्या रास्पबेरी पाई में हार्डवेयर फ़्लोटिंग पॉइंट सपोर्ट है?


34

आस-पास कुछ लेख हैं जो यह कहते हैं कि एआरएम उपकरणों पर सॉफ्ट फ्लोट एल्गोरिदम का उपयोग करना सबसे अच्छा है, क्योंकि बहुत कम एआरएम चिप्स में हार्ड फ्लोट कोप्रोसेसर होते हैं। तो, क्या आरपीआई को हार्ड फ्लोट का समर्थन है? यदि हां, तो क्या यह तेज है कि नरम फ्लोट है? (यह सही होना चाहिए?)

जवाबों:


30

एफएक्यू के अनुसार , रास्पबेरी पाई अस्थायी बिंदु समर्थन के साथ एक एआरएम 11 चिप का उपयोग करता है:

क्या आप उपयोग कर रहे हैं?

SoC एक ब्रॉडकॉम BCM2835 है। इसमें ARM1176JZFS शामिल है, फ्लोटिंग पॉइंट के साथ, 700Mhz पर चल रहा है, और एक वीडियोकोर 4 GPU है। GPU ब्लू रे क्वालिटी प्लेबैक के लिए सक्षम है, जो H.264 का उपयोग 40MBits / s पर करता है। इसमें आपूर्ति की गई OpenGL ES2.0 और OpenVG लाइब्रेरीज़ का उपयोग करके एक तेज़ 3D कोर एक्सेस किया गया है।

यह सॉफ्ट फ्लोट की तुलना में तेज होगा (यदि यह नहीं है, तो मैं चकित हो जाएगा!), हालांकि हार्डवेयर समर्थन के बिना सिस्टम पर यह निश्चित बिंदु प्रसंस्करण का लाभ उठाने के लिए अक्सर एक बेहतर विचार है यदि आपको विशेष रूप से फ्लोटिंग द्वारा प्रस्तावित सीमा की आवश्यकता नहीं है। बिंदु सटीकता।


9

इसमें हार्डवेयर फ्लोटिंग पॉइंट सपोर्ट है। जहां तक ​​मुझे पता है कि यह आरपीआई (अभी तक) के लिए प्रदान किए गए डिफ़ॉल्ट डेबियन डिस्ट्रो में उपलब्ध नहीं है। मैं आर्क के बारे में निश्चित नहीं हूं, हालांकि अगर उनके पास समर्थन नहीं है तो मुझे लगता है कि यह जल्द ही होगा।

मेरे आरपीआई में जेंटू है, इसलिए मैंने डिफ़ॉल्ट रूप से हार्ड फ्लोट समर्थन के साथ सब कुछ संकलित किया है। यह तेज है :)

CFLAGS="-O2 -pipe -mcpu=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard"
CXXFLAGS="${CFLAGS}"
CHOST="armv6j-hardfloat-linux-gnueabi"

(distcc और क्रॉस-संकलन का बड़े पैमाने पर उपयोग किया जाता है, निश्चित रूप से!)


Xiol, आप अपने Gentoo सिस्टम पर एक यूनिक्सबेंच-बेंचमार्क कर सकते हैं और परिणाम पोस्ट कर सकते हैं? यह तुलना के लिए निश्चित रूप से दिलचस्प होगा क्योंकि सॉफ्ट-एफपीयू और हार्ड-एफपीयू के बीच प्रदर्शन अंतर काफी बड़ा है। के अनुसार copypaste.at/2012/06/raspberry-pi-und-debian-7-wheezy-soft.html (क्षमा करें, जर्मन भाषा) Whetstone बेंचमार्क 10x के बारे में Raspian (ARMHF मेहराब डब्ल्यू / HardFPU) के साथ तेजी से आरपीआई बनाम है अनुशंसित डेबियन (ARMEL w / सॉफ्टएफपीयू)। मुझे लगता है कि GenToo के लिए यह और भी बड़ा होना चाहिए।

6

तो, क्या आरपीआई को हार्ड फ्लोट का समर्थन है?

हां, विशेष रूप से (मूल Pi पर) VFPv2।

यदि हां, तो क्या यह तेज है कि नरम फ्लोट है?

हाँ

आस-पास कुछ लेख हैं जो यह कहते हैं कि एआरएम उपकरणों पर सॉफ्ट फ्लोट एल्गोरिदम का उपयोग करना सबसे अच्छा है, क्योंकि बहुत कम एआरएम चिप्स में हार्ड फ्लोट कोप्रोसेसर होते हैं।

2007 में वापस फ्लोटिंग पॉइंट ऑन आर्म एक गड़बड़ था, कई चिप्स में एफपीयू बिल्कुल नहीं था। जिन लोगों ने अक्सर किया उनमें से कई अलग और असंगत थे। वर्सेन डेबियन आर्म (उस समय का प्रमुख आर्म लाइनक्स डिस्ट्रोस) एफपीए नामक एफपीयू के लिए बनाए गए ऐतिहासिक कारणों में से था, जिसमें बहुत कम चिप्स थे और जो फ्लोटिंग पॉइंट के लिए कर्नेल एमुलेशन पर निर्भर थे (सॉफ्टवेयर फ़्लोटिंग पॉइंट धीमा है, केल फ़्लोटिंग पॉइंट फ़्लोटिंग पॉइंट धीमी है)। मुझे लगता है कि अन्य डिस्टरो में स्थिति समान थी लेकिन मैं उस पर सकारात्मक नहीं हूं।

उस समय गड़बड़ी को देखते हुए एक निराशा पैदा की गई थी कि सबसे अच्छा विकल्प EABI के बेसलाइन (सॉफ्ट-फ्लोट) संस्करण का उपयोग करके EABI पोर्ट करना था। इस ABI को इस तरह से डिजाइन किया गया था कि कोड FPU का उपयोग करते हुए बेसलाइन ABI का उपयोग कर सके। उस समय यह विचार था कि डिस्ट्रो का कोर सॉफ्टवेयर फ्लोटिंग पॉइंट और फिर विशिष्ट कोड का उपयोग करके बनाया जाएगा जो हैवीली उपयोग किए जाने वाले फ़्लोटिंग पॉइंट को हार्डवेयर फ़्लोटिंग पॉइंट के साथ बनाया जा सकता है लेकिन फिर भी बेसलाइन (सॉफ्ट फ़्लोट) एबीआई का उपयोग कर सकता है। इस बंदरगाह को डेबियन दुनिया में "आर्मल" के रूप में जाना जाता था।

हालाँकि "विशिष्ट फ़्लोटिंग हार्डवेयर फ़्लोटिंग पॉइंट का उपयोग करके बनाया गया" बिट वास्तव में काम नहीं करता था। व्यवहार में कुछ पैकेजों ने ऐसा काम करने की जहमत उठाई और पूर्णांक और फ्लोटिंग पॉइंट रजिस्टरों के बीच फेरबदल के मूल्यों की भी भरमार थी।

2011 तक तेजी से आगे बढ़े और स्थिति काफी बदल गई थी। आर्म एग्रेसिव रूप से वीएफपी और "एप्लिकेशन प्रोसेसर" के विशाल बहुमत को धक्का दे रहा था (जिस तरह की चीजें आप मोबिल फोन और सिमलीयर में पाते हैं) ने इसे अपनाया था। कई प्रमुख लिनक्स डिस्ट्रोस (कम से कम डेबियन, उबंटू और फेडोरा शुरू में, अधिक बाद में) ने हार्डवेयर फ़्लोटिंग पॉइंट और हार्ड फ्लोट एबीआई का उपयोग करके पोर्ट करना चुना। दुर्भाग्य से पाई के लिए ये डिस्ट्रोस (जो कि पाई जारी होने के समय के आस-पास संकलन तक पहुंच रहे थे) ने आम तौर पर अपनी न्यूनतम हार्डवेयर आवश्यकताओं को ARMv7 के रूप में VFPv3_d16 के साथ सेट किया ताकि वे पाई पर न चलें।

इसलिए पाई के प्रशंसकों ने पीआई-विशिष्ट डिस्ट्रो वेरिएंट पर काम करना शुरू कर दिया, जिसमें हार्डवेयर फ्लोटिंग पॉइंट और हार्ड फ्लोट एबीआई का उपयोग किया गया था लेकिन इसे कंपाइलर सेटिंग्स के साथ बनाया गया था जो पीआई पर चलेगा।


5

18 सितंबर, 2012 से, आर्क लिनक्स एआरएम को भी हार्ड फ्लोट का समर्थन है। इस घोषणा को पढ़ें:

आज हम रास्पबेरी पाई और वाया APC-IO में उपलब्ध VFP फ्लोटिंग-पॉइंट यूनिट को सपोर्ट करने के लिए बनाए गए सभी पैकेजों के साथ, नए armv6 हार्ड-फ्लोट रिपॉजिटरी को जनता के लिए खोल रहे हैं। क्योंकि armv5 सॉफ्ट-फ्लोट रिपॉजिटरी और नए armv6h रिपॉजिटरी के बीच कोई अपग्रेड पथ नहीं है, हमने रास्पबेरी पाई के लिए एक नई इंस्टॉलेशन छवि भी जारी की है। छवि के लिए लिंक हमारे मुख्य साइट पर पाई के लिए इंस्टॉलेशन पृष्ठ पर उपलब्ध है। यह छवि सिसविनीट और इनस्क्रिप्ट्स के बजाय सिस्टमड के लिए भी स्थापित की गई है, इसलिए बूट समय तेज है और इंस्टॉलेशन भविष्य में उन परिवर्तनों के लिए प्रूफ है जो अंततः आर्क में स्थायी हो रहे हैं।

आर्क लिनक्स एआरएम रास्पबेरी पाई


4

हां, जैसा कि अन्य ने बताया है कि रास्पबेरी पाई में हार्ड फ्लोट का समर्थन है। ऑपरेटिंग सिस्टम Raspbian देखें

रास्पबिन डेबियन व्हीज़ी आर्महॉफ़ का अनऑफिशियल पोर्ट है, जिसमें कस्टमाइज़्ड "हार्ड फ्लोट" कोड का उत्पादन करने के लिए समायोजित किया गया है, जो रास्पबेरी पाई पर चलेगा। यह उन अनुप्रयोगों के लिए काफी तेज प्रदर्शन प्रदान करता है जो फ्लोटिंग पॉइंट अंकगणितीय संचालन का भारी उपयोग करते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.