2016-02-10 7 views
5

के रूप में एक GPU मैं कहाँ काम का उपयोग करना, हम संख्यात्मक गणनाओं का एक बहुत करते हैं और हम (TensorFlow और थेनो के साथ काम करने के लिए) CUDA की वजह से NVIDIA वीडियो कार्ड के साथ वर्कस्टेशन खरीदने पर विचार कर रहे हैं।दोनों वीडियो कार्ड और GPGPU

मेरे सवाल यह है: इन कंप्यूटरों एक और वीडियो कार्ड प्रदर्शन को संभालने और GPGPU के लिए NVIDIA मुक्त करने के लिए साथ आना चाहिए?

किसी को भी एक ही समय में प्रदर्शन और GPGPU के लिए एक वीडियो कार्ड का उपयोग करने पर कठिन डेटा के जानता है मैं आभारी होंगे।

उत्तर

4

मेरे अनुभव में संख्यात्मक गणना कार्यों और वीडियो मॉनिटर चलाने के बीच एक जीपीयू कार्ड साझा करना अजीब है। उदाहरण के लिए, किसी भी जीपीयू पर सीमित स्मृति उपलब्ध है, जो अक्सर आपके द्वारा प्रशिक्षित मॉडल के आकार में सीमित कारक होता है। जब तक आप गेमिंग नहीं कर रहे हैं, तो वीडियो चलाने के लिए शायद एक मामूली GPU संभवतः पर्याप्त है। लेकिन गंभीर एमएल काम के लिए आप शायद एक उच्च प्रदर्शन कार्ड चाहते हैं। जहां मैं काम करता हूं (Google) हम आमतौर पर डेस्क-साइड मशीनों में दो जीपीयू डालते हैं जब किसी को संख्यात्मक गणना के लिए उपयोग किया जाता है।

+0

बहुत बहुत धन्यवाद! - एक और सवाल: मैंने कहीं पढ़ा है (मुझे लगता है कि यह टेंसर फ्लो प्रलेखन पर था लेकिन इसे नहीं मिला) कि मॉडल को प्रशिक्षण देने पर प्रदर्शन समय-समय पर स्थिर हो सकता है। क्या ऐसा है? –

7

इस के माध्यम से, मैं अपने दो सेंट जोड़ दूंगा।

कंप्यूटेशंस के लिए समर्पित कार्ड होना उपयोगी है, लेकिन यह निश्चित रूप से आवश्यक नहीं है।

मैंने प्रदर्शन और गणना दोनों के लिए एक उच्च अंत GPU के साथ एक विकास वर्कस्टेशन का उपयोग किया है। मैंने कई GPUs के साथ-साथ हेडलेस कंप्यूट सर्वर के साथ वर्कस्टेशन का भी उपयोग किया है।

मेरा अनुभव है कि प्रदर्शन GPU पर गणना कर जब तक प्रदर्शन पर मांगों को सॉफ्टवेयर इंजीनियरिंग में आम है ठीक है। कुछ मॉनीटर, वेब ब्राउज़र, टेक्स्ट एडिटर्स इत्यादि के साथ एक लिनक्स सेटअप में, मैं 6 जीबी कार्ड से बाहर प्रदर्शित करने के लिए लगभग 200 एमबी का उपयोग करता हूं - इसलिए केवल 3% ओवरहेड। आप किसी वेब पेज रीफ्रेश या उस तरह कुछ के दौरान डिस्प्ले स्टटर को थोड़ा सा देख सकते हैं, लेकिन डिस्प्ले की थ्रूपुट मांग बहुत छोटी है।

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

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

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

उम्मीद है कि मदद करता है।

+0

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

+1

@ रिकार्डो एनवीआईडीआईए चालक परिपक्व है और संदर्भ स्विचिंग में बहुत अच्छा है - यहां कोई मौलिक बाधा नहीं है - लेकिन मेमोरी, बैंडविड्थ और कंप्यूटिंग थ्रूपुट को साझा करने में आपकी अपेक्षा की कमी है - इसलिए जीपीयू साझा करने की व्यवहार्यता पर निर्भर करता है आपके आवेदन का विवरण अत्याधुनिक प्रदर्शन के लिए प्रशिक्षण मॉडल मांग कर रहे हैं (उदाहरण के लिए, छवि वर्गीकरण के लिए कई दिनों के लिए पूरी तरह से उपयोग किए जाने वाले एकाधिक जीपीयू)। आप उन एल्गोरिदम को देख सकते हैं जिन्हें आप चलाना चाहते हैं और देखें कि अन्य लोग उन्हें कितने समय तक चलाते हैं, और फिर परीक्षण/डीबग/अनुकूलन आवश्यकताओं पर भी विचार करें। –

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