2009-09-20 11 views
39

मैं आर मैटलैब को तैनात करने का सबसे अच्छा तरीका सोच रहा हूं "मैटलैब कंपाइलर" (एमसीआर) है। अतीत में आर के समान कुछ के बारे में चर्चा हुई है जो आर सी या सी ++ को संकलित करेगी। क्या किसी को R to C Compiler (RCC) that was developed by John Garvin at Rice के साथ कोई अनुभव है?क्या एक आर संकलक मौजूद है?

मैंने इसे देखा है, और यह एकमात्र ऐसा प्रोजेक्ट प्रतीत होता है जो आर कोड को निष्पादन योग्य कोड में संकलित करने पर काम करता है। और जहां तक ​​मैं कह सकता हूं, अभी भी इसका उपयोग नहीं किया जा रहा है।

[संपादित करें 1:]: स्पष्ट है कि, मैं जानता हूँ कि C और C++ (और जावा, अजगर, आदि) आर (rJava, rcpp, Rpy, आदि) के लिए इंटरफेस देखते हैं कि। मैं अग्रिम में आर इंस्टॉल किए बिना आर कोड को संकलित और तैनात करने के विशिष्ट तरीकों के बारे में सोच रहा हूं।

[संपादित करें 2:]: जॉन मेलर-क्रम्मी मुझे बताता है कि वे अभी भी आरसीसी पर काम कर रहे हैं और इसे 4 महीने या उससे भी पहले (इसे जल्द से जल्द) उपलब्ध कराने की उम्मीद है। अगर मैं कुछ और पाता हूं तो मैं इसे और अपडेट कर दूंगा।

उत्तर

35

एक बाइट कोड संकलक आर 2.13 रिलीज का हिस्सा होगा।डिफ़ॉल्ट रूप से इसका उपयोग इस रिलीज में नहीं किया जाता है लेकिन यह उपलब्ध है; मुझे उम्मीद है कि 2.14 रिलीज डिफ़ॉल्ट बाइट द्वारा सभी आधार और अनुशंसित संकुल संकलित करेगा। कंपाइलर :: संकलन सहायता पृष्ठ और आर स्थापना और प्रशासन मैनुअल कुछ और विवरण दें।

+0

क्या संकलन प्रभावी होने पर संकेत/दिशानिर्देश हैं? मेरा सबसे सफल प्रयास अभी तक एक बाइनरी खोज रहा है, जिसमें 2x स्पीडअप है; मैं गुप्त रूप से उम्मीद कर रहा था कि एस 4 वास्तव में तेज़ हो जाएगा, लेकिन ऐसी कोई किस्मत नहीं है? –

+1

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

+5

मैंने आज एक उदाहरण ब्लॉग किया जो (सरल, बेवकूफ, अवास्तविक) लूप पर केंद्रित है: http://dirk.eddelbuettel.com/blog/2011/04/12#the_new_r_compiler_package मुझे यकीन है कि आर 2.13 पर एक बार इस पर और अधिक पोस्ट होंगे औपचारिक रूप से कल जारी किया गया है। –

3

मैंने गर्विन के पैकेज का उपयोग नहीं किया है और यह नहीं पता कि उन पंक्तियों के साथ क्या संभव है। हालांकि:

आमतौर पर लोग बाधाओं को खोजने के लिए profiling के बाद सीधे सी/सी ++/फोरट्रान में कम्प्यूटेशनल गहन कार्यों को लिखते हैं। उदाहरण के लिए RCpp interface या Calling C functions from R using .C and .Call देखें। Scythe Statistical Library आर उपयोगकर्ताओं के लिए भी बहुत अच्छा है क्योंकि वाक्यविन्यास/फ़ंक्शन नाम समान हैं।

+0

धन्यवाद, उन अच्छे लिंक कर रहे हैं। हालांकि, विशेष रूप से तैनाती प्रक्रिया पर ध्यान केंद्रित कर रहा हूं, प्रदर्शन प्रदर्शन से कम। – Shane

17

मैं चावल परियोजना के बारे में भूल गया था, यह थोड़ी देर हो गया है। मुझे लगता है कि परियोजना पृष्ठ के शीर्ष पर यहां परिचालन शब्द कहा गया है: अंतिम अपडेट 3/8/06

और हम सभी जानते हैं कि आर बहुत बदलता है। इसलिए मैं आप के लिए केवल मानक कुछ संकेत दिए गए हैं:

  • Luke Tierney, जो न केवल आर internals के बारे में लेकिन समान रूप से बाइट compilers के बारे में बहुत कुछ जानता है, इस तरह के एक परियोजना पर काम किया गया है। अभी तक तैयार नहीं है, और यह अभी भी मानक आर इंजन के संयोजन के साथ काम करेगा।
  • स्टीफन Milborrow कि उसकी बस-इन-टाइम संकलक पैकेज jit
  • आर ट्यूटोरियल के साथ उच्च निष्पादन कम्प्यूटिंग के लिए अपने परिचय (most recent tutorial slides from UseR! 2009), रूपरेखा को शामिल किया गया एक्सटेंशन, आर के साथ समानांतर कंप्यूटिंग के संकलन के साथ काम करता आर Ra एक्सटेंशन है,। .. भाग, Rcpp और थोड़ा सा RInside समेत।

संक्षेप में: कोई रास्ता नहीं है कि तुम क्या इच्छा संकलन और अग्रिम में अनुसंधान की स्थापना के बिना आर कोड को तैनात करने के विशिष्ट तरीके है। माफ़ कीजिये।

संपादित करें/अद्यतन (अप्रैल 2011): ल्यूक के नए compiler पैकेज आर 2.13.0 का हिस्सा डिफ़ॉल्ट रूप से (अप्रैल 2011 जारी होने की) लेकिन 'सक्रिय' है जो आर 2.14.0 के लिए उम्मीद के लिए आशा की जाती है हो जाएगा अक्टूबर 2011.

संपादित/अपडेट (दिसंबर 2011): प्रोफेसर टियरनी बस बाइट कोड कोडर पर massive 100+ page paper जारी करें।

+0

धन्यवाद Dirk! हाल ही में ल्यूक के मुखपृष्ठ की जांच नहीं की है। आपका उच्च-प्रदर्शन कंप्यूटिंग पेपर/ट्यूटोरियल शानदार है। मैंने आखिरी अद्यतन तिथि को वास्तव में अर्थ के रूप में लिया है, लेकिन बस जांचना चाहता था। :) – Shane

6

आर को तैनात करते समय लोगों को डर क्यों मिलता है? मुझे पूरा यकीन है कि मैंने पहले इस सवाल को देखा है।

आर इंस्टॉल करना केक का एक टुकड़ा है (आप वास्तव में नहीं कहते कि आप किस ओएस की परवाह करते हैं)। विंडोज के लिए एक .exe। फ़ाइल, इसे चलाएं, "हां" कुछ बार कहें और इसके द्वारा किया गया। मुझे संदेह है कि इंस्टॉलर exe शायद अप्रत्याशित स्थापना के लिए झंडे है।

+4

आर आसान है। कुछ पैकेज और उनकी निर्भरता नहीं हैं, खासकर यदि इनमें कुछ अन्य भाषाएं शामिल हैं। जावा और टीसीएल/टीके दिमाग में आते हैं। – Iterator

3

आप पी संकलक जो आर के एक सबसेट विशेष रूप से, सूची, मैट्रिक्स, वैक्टर आदि लागू किया जाता है और साथ ही लागू करता lsfit, चोल, SVD, के रूप में बाहर की जाँच कर सकते हैं ...

आप एक नि: शुल्क डाउनलोड कर सकते हैं

www.ptechnologies.org

पर संस्करण यह काफी हद तक संगणना को गति।

बेस्ट,

के रूप में

+9

यदि यह बंद स्रोत नहीं था तो यह और भी अधिक आकर्षक होगा ... –

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