मेरे पास एरलांग में एक तंत्रिका नेटवर्क लिखा गया है, और मैंने अभी एक 240 कोर जीपीयू के साथ एक GeForce GTX 260 कार्ड खरीदा है। ग्राफिक्स कार्ड पर चलाने के लिए गोंद के रूप में CUDA का उपयोग करना मुश्किल है?मैं एक GPU सरणी पर पहले से लिखित समवर्ती प्रोग्राम कैसे चला सकता हूं?
उत्तर
नहीं, सीयूडीए का उपयोग करना एक मामूली मामला नहीं है।
सीयूडीए प्रोग्रामिंग मॉडल मूल रूप से सी (कुछ जोड़ों के साथ) का उपयोग करता है लेकिन GPGPU की अधिकांश क्षमताओं को प्राप्त करने के लिए आपको यह सुनिश्चित करना होगा कि आपके एल्गोरिदम CUDA दिशानिर्देशों का पालन करें। (NVidia CUDA Programming Guide देखें)
उदाहरण के लिए सर्वश्रेष्ठ मेमोरी प्रदर्शन (कहीं 70 जीबीपीएस) प्राप्त करने के लिए आपको कोलेसिंग के साथ स्ट्रीमिंग मोड में मेमोरी तक पहुंचने की आवश्यकता है, जीपीयू पर भी शाखाएं बहुत महंगी हैं, इसलिए आपको सशर्त से बचने चाहिए मुमकिन। एसडीके के साथ प्रदान की गई मार्गदर्शिका और नमूने देखें, वे एक उत्कृष्ट प्रारंभिक बिंदु
यूप, यह बहुत काम है। एक महत्वपूर्ण गति प्राप्त करने के लिए आपको समझना होगा कि आंकड़ों की व्यवस्था कैसे करें और आधे युद्धों की अवधारणा और उल्लिखित अनुसार। इसके अलावा मेरा मानना है कि लक्ष्य मशीन कोड GPU श्रृंखला के अनुसार बदलता है ... – Sushant
मेरी इच्छा है कि मैं आपको बता सकता हूं कि एरलांग ... ;-) के साथ ऐसा कैसे करें, लेकिन कम से कम, एमएस में सतनाम सिंह शोध ने हास्केल (लावा) और एफ # के साथ कुछ बहुत ही रोचक काम किया है। शायद इस पत्र आप कैसे यह किया जा सकता है के लिए कुछ अंतर्ज्ञान दे सकते हैं:
टूटा लिंक। सतनाम का होमपेज यहां है: http://research.microsoft.com/en-us/people/satnams/ –
- 1. मैं कोई प्रोग्राम कैसे चला सकता हूं?
- 2. मैं इस 1989 लिखित सी प्रोग्राम को कैसे संकलित और चला सकता हूं?
- 3. मैं CUDA का उपयोग कर GPU पर MATLAB कोड कैसे चला सकता हूं?
- 4. मैं स्ट्रॉबेरी पर्ल के साथ प्रोग्राम कैसे चला सकता हूं?
- 5. मैं एक्सकोड 4 में सी ++ प्रोग्राम कैसे चला सकता हूं?
- 6. मैं डेल्फी में कमांड लाइन प्रोग्राम कैसे चला सकता हूं?
- 7. मैं सी में बाहरी प्रोग्राम कैसे चला सकता हूं?
- 8. रूबी - मैं विभिन्न धागे पर प्रत्येक सरणी तत्व पर एक विधि कैसे चला सकता हूं?
- 9. मैं आरओआर पर तेजी से परीक्षण कैसे चला सकता हूं?
- 10. मैं एक अलग थ्रेड पर सेवा कैसे चला सकता हूं?
- 11. क्या मैं इस कोड को जीपीयू पर चला सकता/सकती हूं? 30 लाख से एक सरणी में चल बिन्दु मान -
- 12. मैं मेकफ़ाइल से पर्ल एक लाइनर कैसे चला सकता हूं?
- 13. मैं इवेंटहालर को असीमित रूप से कैसे चला सकता हूं?
- 14. मैं एक अलग निर्देशिका से जावा प्रोग्राम कैसे चला सकता हूं?
- 15. मैं Emacs में एक अजगर दुभाषिया कैसे चला सकता हूं?
- 16. मैं कमांड लाइन से स्कैला + specs2 कैसे चला सकता हूं?
- 17. सिर लोड होने के बाद, लेकिन डीओएम से पहले मैं एक स्क्रिप्ट कैसे चला सकता हूं?
- 18. मैं प्रोग्राम को एक प्रोग्राम को कैसे हटा सकता हूं?
- 19. मैं कक्षा कोड पर अपना कोड कैसे चला सकता हूं?
- 20. मैं विंडोज़ में स्टार्टअप पर एक्सएएमपीपी कैसे चला सकता हूं?
- 21. मैं जावास्क्रिप्ट में रेगेक्स पर रेगेक्स कैसे चला सकता हूं?
- 22. मैं एक स्थिर निर्माता कैसे चला सकता हूं?
- 23. मैं पोर्ट 80 पर Node.js कैसे चला सकता हूं?
- 24. मैं रूबी जेम कैसे चला सकता हूं?
- 25. मैं क्लाइंट साइड पर प्रोग्राम या बैच फ़ाइल कैसे चला सकता हूं?
- 26. मैं समय-समय पर सेवा विधि कैसे चला सकता हूं?
- 27. मैं एंड्रॉइड डिवाइस पर लिनक्स कमांड कैसे चला सकता हूं?
- 28. मैं टर्मिनल के बिना विंडोज़ में एक py2exe प्रोग्राम कैसे चला सकता हूं?
- 29. मैं कई बार रेकैक प्रोग्राम प्रोग्रामेटिक रूप से कैसे चला सकता हूं?
- 30. मैं जनरेटर से एक numpy सरणी कैसे बना सकता हूं?
भयानक सवाल है, तो आप erlang समुदाय में इस बढ़ाने पर विचार करना चाह सकते हैं, यह erlang में कुछ सही मायने में उल्लेखनीय परिवर्तन को प्रेरित कर सकता है! :-) – none
@ नहीं: मुझे शक है कि। Erlang concurrency मॉडल CUDA या OpenCL उपयोग जैसी समवर्ती मॉडल भाषाओं के साथ बहुत अच्छी तरह से किराया नहीं है। मैंने एरलांग के लिए ओपनसीएल बाइंडिंग लिखने के लिए कुछ (अभी तक अप्रकाशित) प्रयास किए हैं, लेकिन अब के लिए एकमात्र असली एप्लिकेशन जो मैं देख रहा हूं वह तेजी से मैट्रिक्स ट्रांसफॉर्मेशन जैसी चीजें कर रहा है। – Amadiro