2010-11-18 12 views
8

मैं कॉर्टेक्स- ए 8 प्रोसेसर उपयोग कर रहा हूँ और मैं समझ नहीं कर रहा हूँ कैसे -mfpu ध्वज का उपयोग करने का उपयोग करने के लिए कैसे।एआरएम कॉर्टेक्स ए 8-: दोनों नियोन और vfpv3

कॉर्टेक्स- ए 8 पर दोनों vfpv3 और नीयन सह प्रोसेसर देखते हैं। इससे पहले मैं और कैसे नीयन उपयोग करने के लिए जानते हुए भी नहीं कर रहा था तो मैं केवल

gcc -marm -mfloat-abi=softfp -mfpu=vfpv3

अब मैं समझ चुके हैं उपयोग कर रहा था कैसे SIMD प्रोसेसर चलाने मैं नियोन intrinsics का उपयोग कर कुछ कोड लिखा है। अब नीयन सह-प्रोसेसर का उपयोग करने के लिए मेरे -mfpu झंडा तो मेरे संकलक कमांड लाइन इस

gcc -marm -mfloat-abi=softfp -mfpu=neon

अब की तरह दिखता है -mfpu=neon को बदलने के लिए है,, इसका मतलब यह है कि मेरा vfpv3 किसी भी अधिक नहीं किया जाता है? मेरे पास बहुत सारे कोड हैं जो नीयन का उपयोग नहीं कर रहे हैं, उन हिस्सों को vfpv3 का उपयोग न करें।

दोनों नीयन और vfpv3 अभी भी तो इस्तेमाल कर रहे हैं अगर मैं कोई मुद्दा नहीं है, लेकिन यदि उनमें से केवल एक प्रयोग किया जाता है मैं दोनों के उपयोग कैसे कर सकते हैं?

उत्तर

10

नियोन भी पारंपरिक VFP समर्थन होने का तात्पर्य। वीएफपी का इस्तेमाल "सामान्य" (गैर-वेक्टर) फ्लोटिंग-पॉइंट गणनाओं के लिए किया जा सकता है। इसके अलावा, नीयन डबल-परिशुद्धता एफपी का समर्थन नहीं करता है, इसलिए इसके लिए केवल वीएफपी निर्देशों का उपयोग किया जा सकता है।
आप क्या कर सकते हैं gcc की कमांड लाइन में add -S है और असेंबली की जांच करें। वी से शुरू होने वाले निर्देश (उदा। Vld1.32, vmla.f32) एनईओएन निर्देश हैं, और एफ (fldd, fmacd) से शुरू होने वाले लोग VFP हैं। (एआरएम डॉक्स अब भी VFP निर्देश के लिए वी उपसर्ग का उपयोग करना पसंद है, जीसीसी कि नहीं करता है।)

+0

इगोर मैं केवल एकल परिशुद्धता चल बिन्दु मान हैं। दरअसल मैं बहुत सारे एफ-निर्देश (fadds, fsitos) देखता हूं, इसलिए मुझे लगता है कि vfp निर्देश अभी भी कंपाइलर द्वारा जारी किए जा रहे हैं। – HaggarTheHorrible

+0

एक असंबंधित प्रश्न, क्या आप जानते हैं कि दोहरी-समस्या प्रोसेसर का क्या अर्थ है? कॉर्टेक्स-ए 8 दोहरी समस्या प्रोसेसर है इसका क्या अर्थ है? क्या आप मुझे किसी भी लिंक पर इंगित कर सकते हैं? मेरी खोज इतनी उत्पादक नहीं थी। – HaggarTheHorrible

+0

विक्रम, कोरटेक्स ए 8 ऑर्डर प्रोसेसर से दोहरी समस्या है। इसका मतलब है (विभिन्न) कि यह कुछ या सभी 1 कर सकता है) आउट-ऑफ-ऑर्डर निष्पादन के लिए डीकोड और एनक्यू प्रति घड़ी दो निर्देश, 2) प्रति घड़ी दो कतारबद्ध निर्देश निष्पादित करें और/या 3) यह दो ऐसे सेवानिवृत्त हो सकता है प्रति घड़ी परिणाम। दूसरे शब्दों में, सर्वोत्तम स्थितियों में यह प्रति घड़ी दो निर्देशों को निष्पादित कर सकता है, निरंतर। बेस्ट की स्थिति ही होते हैं जब कोई कैश छूट जाए, शाखा mispredictions, आदि –