CUDA बनाम OpenCL के बारे में मेरी कोई मजबूत भावना नहीं है; मुमकिन है ओपनसीएल एक दीर्घकालिक मानक है, सिर्फ एक खुला मानक होने के कारण।
लेकिन जीपीजीपीयू (ग्राफिक्स प्रदर्शन नहीं, बल्कि जीपीजीपीयू) के लिए वर्तमान में NVIDIA बनाम एटीआई कार्ड, कि मेरे बारे में एक मजबूत राय है। और इसका नेतृत्व करने के लिए, मैं बताता हूँ कि बड़े समूहों की वर्तमान शीर्ष 500 सूची में , NVIDIA AMD 4 सिस्टम को 1 पर ले जाता है, और gpgpu.org पर , खोज परिणाम (कागजात, ऑनलाइन संसाधनों के लिंक, आदि) NVIDIA के लिए AMD 6: 1 के लिए परिणाम परिणाम।
इस अंतर का एक बड़ा हिस्सा उपलब्ध ऑनलाइन जानकारी की मात्रा है। NVIDIA CUDA ज़ोन बनाम AMD के GPGPU डेवलपर सेंट्रल की जाँच करें । डेवलपर्स के लिए वहाँ सामान की मात्रा शुरू करने के करीब भी नहीं है। एनवीआईडीआईए साइट पर आपको बहुत सारे कागजात मिलेंगे - और योगदान कोड - शायद आपकी जैसी समस्याओं पर काम करने वाले लोगों से। आपको NVIDIA और अन्य जगहों से कई ऑनलाइन कक्षाएं मिलेंगी, और डेवलपर्स के सबसे अच्छे अभ्यास गाइड जैसे बहुत उपयोगी दस्तावेज, आदि। फ्री डेवेल टूल्स की उपलब्धता - प्रोफाइलर, क्यूडा-जीडीबी, आदि - एनवीआईडीआईए को भारी रूप से झुकाते हैं।
(संपादक: इस पैराग्राफ में जानकारी अब सटीक नहीं है।) और कुछ अंतर हार्डवेयर भी है। चोटी के फ्लॉप के संदर्भ में एएमडी कार्ड बेहतर चश्मा हैं, लेकिन इसका एक महत्वपूर्ण अंश प्राप्त करने में सक्षम होने के लिए, आपको न केवल अपनी समस्या को कई पूरी तरह से स्वतंत्र स्ट्रीम प्रोसेसर पर तोड़ना होगा, प्रत्येक कार्य आइटम को भी वेक्टर करना होगा। यह देखते हुए कि GPGPUing वाले कोड काफी कठिन हैं, अतिरिक्त वास्तु जटिलता कुछ परियोजनाओं को बनाने या तोड़ने के लिए पर्याप्त है।
और इस सबका परिणाम यह है कि NVIDIA उपयोगकर्ता समुदाय का विकास जारी है। जिन तीन या चार समूहों के बारे में मुझे पता है कि GPU क्लस्टर बनाने की सोच रही है, उनमें से कोई भी गंभीरता से AMD कार्ड पर विचार नहीं कर रहा है। और इसका मतलब यह होगा कि अभी भी और अधिक समूह पेपर लिख रहे हैं, कोड का योगदान कर रहे हैं, आदि।
मैं एक NVIDIA शिल नहीं हूँ; काश यह इस तरह से नहीं थे, और यह कि दो (या अधिक!) समान रूप से GPGPU प्लेटफार्मों को मजबूर करने वाले थे। प्रतिस्पर्धा अच्छी है। शायद एएमडी बहुत जल्द अपने खेल को आगे बढ़ाएगा - और आगामी संलयन उत्पाद बहुत सम्मोहक लगते हैं। लेकिन किसी को यह सलाह देने के बारे में कि आज कौन सा कार्ड खरीदना है, और अभी अपना समय कहाँ बिताना है, मैं अच्छे विवेक से यह नहीं कह सकता कि दोनों विकास परिवेश समान रूप से अच्छे हैं।
जोड़ने के लिए संपादित : मुझे लगता है कि मूल प्रश्न का उत्तर देने के मामले में उपरोक्त थोड़ा अण्डाकार है, इसलिए मुझे इसे थोड़ा और स्पष्ट करना चाहिए। हार्डवेयर के एक टुकड़े से आप जो प्रदर्शन प्राप्त कर सकते हैं, वह अनंत समय के साथ एक आदर्श दुनिया में उपलब्ध है, जो केवल अंतर्निहित हार्डवेयर और प्रोग्रामिंग भाषा की क्षमताओं पर निर्भर है; लेकिन वास्तव में, आपके द्वारा निवेश किए गए समय की निश्चित मात्रा में प्रदर्शन की मात्रा भी दृढ़ता से डेवेल टूल्स, मौजूदा सामुदायिक कोड आधारों (जैसे, सार्वजनिक रूप से उपलब्ध पुस्तकालयों, आदि) पर निर्भर करती है। वे सभी विचार एनवीआईडीआईए को दृढ़ता से इंगित करते हैं।
(संपादक: इस पैराग्राफ में जानकारी अब सटीक नहीं है।) हार्डवेयर के संदर्भ में, AMD कार्ड में SIMD इकाइयों के भीतर वैश्वीकरण की आवश्यकता भी NVIDIA हार्डवेयर की तुलना में कागजी प्रदर्शन को और अधिक कठिन बना देती है।