2010-06-30 9 views
8

मेरी समझ का कोई भी हिस्सा गलत है तो मुझे सही करने के लिए स्वतंत्र महसूस करें।क्या एक जेआईटी कंपाइलर के लिए दृश्यों के पीछे कुछ संचालन के लिए जीपीयू का उपयोग करना संभव होगा?

मेरी समझ यह है कि जीपीयू उन निर्देशों का एक सबसेट प्रदान करते हैं जो एक सामान्य सीपीयू प्रदान करता है लेकिन उन्हें बहुत तेज़ी से निष्पादित करता है।

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

क्या मेरी समझ बेवकूफ है? क्या यह सिर्फ एक मायने रखता है कि यह वास्तव में जटिल है और बस इसे नहीं किया गया है?

+0

आपका मतलब है कि जेआईटी सीएलआर या जेवीएम के साथ है? सामान्य उद्देश्य बाइटकोड्स? आरएस जैसे डीएसएल? – Stringer

+0

मैं सीएलआर/जेवीएम शैली सोच रहा था, लेकिन किसी भी अन्य उत्तरों में रुचि रखते थे। – Davy8

उत्तर

8

मेरे समझ कि GPUs निर्देश है कि एक सामान्य सीपीयू प्रदान करता है की एक सबसेट की पेशकश है, लेकिन बहुत तेजी से उन्हें निष्पादित करता है।

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

तो जीआईटी कंपाइलर के लिए जीपीयू कुशलतापूर्वक उपयोग करने में सक्षम होने के लिए, यह कोड का पता लगाने में सक्षम होना चाहिए जिसे सिमड निर्देशों से लाभ के लिए समांतर किया जा सकता है और फिर यह निर्धारित करना होगा कि अगर सीपीयू से डेटा ट्रांसफर करके ओवरहेड प्रेरित होता है जीपीयू में प्रदर्शन सुधार से अधिक वजन होगा।

+0

यह सही है, मैं भूल गया कि बहुत सी जीपीयू गति आधुनिक जीपीयू के साथ समांतरता से आती है जिसमें सैकड़ों (तार्किक?) कोर हैं। इससे उपयोगिता कम हो जाती है क्योंकि इसके लिए बहुत कम ऐप्स सेट अप किए जाते हैं। – Davy8

0

जीआईटी को गति देने के लिए GPU (उदा।, एक CUDA- या OpenCL- सक्षम एक) का उपयोग करना संभव है। दोनों पंजीकरण आवंटन और निर्देश शेड्यूलिंग कुशलतापूर्वक कार्यान्वित किया जा सकता है।

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

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