2012-11-15 26 views
5

के साथ दृश्य स्टूडियो 2010 में क्यूडा जोर कार्यों को डीबग करने के लिए कैसे मैं विजुअल स्टूडियो 2010, समांतर नाइट 2.2 और सीखने के लिए कुडा 4.2 का उपयोग कर रहा हूं। मेरा सिस्टम विंडोज 8 प्रो x64 है। मैंने रेडिक्स सॉर्ट प्रोजेक्ट खोला जो वीएस में क्यूडा कंप्यूटिंग एसडीके द्वारा शामिल किया गया था, और इसे बिना किसी त्रुटि के संकलित किया। सॉर्ट कोड जोर लाइब्रेरी का उपयोग करता:समानांतर नाइट

if(keysOnly) 
    thrust::sort(d_keys.begin(), d_keys.end()); 
else 
    thrust::sort_by_key(d_keys.begin(), d_keys.end(), d_values.begin()); 

मुझे पता है कि कैसे जोर CUDA कर्नेल के लिए तरह समारोह प्रेषण चाहते हैं, इसलिए मैं ऊपर लाइनों के सामने breakpoints जोड़ सकते हैं और डिबग मोड में परियोजना संकलित करने की कोशिश की। लेकिन जब मैं कुडा डीबगिंग के लिए समानांतर नाइट का उपयोग करता हूं, तो हमेशा त्रुटियां होती हैं कि "ब्रेकपॉइंट के लिए कोई स्रोत पत्राचार नहीं"।

तो, मेरी समस्याएं हैं:

  1. कैसे समानांतर Nsight साथ दृश्य स्टूडियो में CUDA जोर कार्यक्रमों डिबग करने के लिए?
  2. या क्या कोई मुझे यह जानने के लिए निर्देश दे सकता है कि कैसे cuda जोरदार डुप्च कोडा कर्नल्स या अन्य कार्यों में काम करता है?

किसी भी सलाह की सराहना की जाएगी!

उत्तर

2

आम तौर पर, CUDA में डिबग उपकरण कोड के लिए, यह आवश्यक पारित करने के लिए है: NVCC को

-G -g 

स्विच। हालांकि यह मामला not supported with thrust code है। आप इस बात का एक अनुमान प्राप्त कर सकते हैं कि ढांचे में संरचना का पालन करके डिवाइस को कोड को कितना जोर दिया जाता है, जिसमें फाइलें शामिल हैं। चूंकि जोर पूरी तरह से templatized कोड है, चिंता करने के लिए कोई पुस्तकालय नहीं हैं। हालांकि यह एक चुनौतीपूर्ण प्रस्ताव है। तुम भी PTX उत्पन्न करने के लिए संकलक बता सकते हैं:

-ptx 

है जो one of the intermediate code types कि CUDA कोड को संकलित हो जाता है। हालांकि यह किसी भी पार्स करने के लिए एक छोटी सी चीज नहीं है। This link थ्रस्ट के साथ डीबगिंग के लिए कुछ वैकल्पिक विचार देता है।

+0

धन्यवाद रॉबर्ट, मैंने पहले ही डीबगिंग पर जोर विकी पढ़ी है। लेकिन मुझे लगता है कि इसकी सामग्री मेरी समस्याओं के लिए बहुत उपयोगी नहीं है। मैं सिर्फ जोर पुस्तकालय में निर्णय प्रक्रियाओं के विवरण जानना चाहता हूं। तो मैं स्रोत कोड पढ़ने की कोशिश कर रहा था और पीटीएक्स कोड पढ़ने की कोशिश भी कर सकता हूं। धन्यवाद! – Miles

संबंधित मुद्दे