2013-03-24 6 views
5

मैं उबंटू 12.10 AMD64 पर 64 बिट आर चला रहा हूं। मैंने हाल ही में अपने सिस्टम में अतिरिक्त 12 जीबी मेमोरी जोड़ दी है जो इसे कुल 12 जीबी बनाती है। लेकिन मुझे लगता है कि जब भी स्मृति उपयोग (एकल आर सत्र का) 4 जीबी से ऊपर चला जाता है तो आर मुझे एक त्रुटि देता है। जब मैं समांतर में 6 आर सत्र चलाता था, प्रत्येक ~ 3 जीबी मेमोरी का उपभोग करता था, तो मेरे सभी मेमोरी उपयोग में 11 जीबी तक बढ़ोतरी हुई। लेकिन एक एकल आर सत्र 4 जीबी से अधिक का उपयोग करने में सक्षम नहीं है! मुझे एक बड़े डेटा सेट पर एक यादृच्छिक वन मॉडल को प्रशिक्षित करने की आवश्यकता है और मुझे एक सिंगल आर सत्र के साथ 4 जीबी की आवश्यकता है।आर 4 जीबी से अधिक मेमोरी का उपयोग नहीं कर रहा है

अद्यतन:

R> sessionInfo() 

R version 2.15.1 (2012-06-22) 
Platform: x86_64-pc-linux-gnu (64-bit) 

locale: 
[1] LC_CTYPE=en_US.UTF-8  LC_NUMERIC=C    
[3] LC_TIME=en_US.UTF-8  LC_COLLATE=en_US.UTF-8  
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 
[7] LC_PAPER=C     LC_NAME=C     
[9] LC_ADDRESS=C    LC_TELEPHONE=C    
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C  

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods 
[7] base  

loaded via a namespace (and not attached): 
[1] tools_2.15.1 

अद्यतन 2:

$ ulimit -a 
core file size   (blocks, -c) 0 
data seg size   (kbytes, -d) unlimited 
scheduling priority    (-e) 0 
file size    (blocks, -f) unlimited 
pending signals     (-i) 92787 
max locked memory  (kbytes, -l) 64 
max memory size   (kbytes, -m) unlimited 
open files      (-n) 1024 
pipe size   (512 bytes, -p) 8 
POSIX message queues  (bytes, -q) 819200 
real-time priority    (-r) 0 
stack size    (kbytes, -s) 8192 
cpu time    (seconds, -t) unlimited 
max user processes    (-u) 92787 
virtual memory   (kbytes, -v) unlimited 
file locks      (-x) unlimited 
+0

मुझे Fedora AMD64 पर 64-बिट आर के साथ कोई समस्या नहीं है। मैंने इसे पहले 30 जी का उपयोग किया है। शायद आपके पास प्रक्रिया कोटा है? –

+7

क्या आप 'sessionInfo() 'के आउटपुट पोस्ट कर सकते हैं? – Dason

+0

@Dason ने sessionInfo() –

उत्तर

0

एक Windows OS में, डिफ़ॉल्ट रूप से, आर दोनों 32 और 64 बिट संस्करणों स्थापित करता है। हालांकि, ऐसा लगता है कि लिनक्स नहीं करता है। यदि आप RStudio जैसे आईडीई का उपयोग कर रहे हैं, तो स्थापित होने पर, 32-बिट संस्करण को इंगित करता है। आप इसे Rstudio सेटिंग्स में बदल सकते हैं।

+0

संपादित प्रश्न में 'sessionInfo()' का परिणाम देखें। और मुझे यकीन नहीं है कि जब आप 64-बिट संस्करण स्थापित करते हैं तो उबंटू 32-बिट संस्करण स्थापित करता है। फेडोरा नहीं करता है। –

+0

@ मैथ्यूलंडबर्ग, मैंने अपना जवाब संशोधित करने के लिए संशोधित किया कि आर लिनक्स में दोनों संस्करणों को स्थापित नहीं करता है। हालांकि, मैं जवाब नहीं हटा रहा हूं क्योंकि मैं अपनी प्रयोगशालाओं में इस सटीक मुद्दे पर भाग गया था। एक छात्र विंडोज में आरस्टूडियो का उपयोग कर रहा था, दोनों आर संस्करण स्थापित थे, और रैम मुद्दों में भाग गया। एक बार जब हमने RStudio कॉन्फ़िगरेशन को R x64 में बदल दिया, तो यह काम करता था। इस पोस्ट का जवाब नहीं देता है लेकिन अभी भी उपयोगी है। –

1

मुझे संदेह है कि आपके पास प्रक्रिया की सीमाएं हैं, किसी भी प्रक्रिया को 4 जी तक सीमित करना।

ulimit -a आज़माएं और स्मृति से संबंधित किसी भी असीमित मान को देखें।

इसके अलावा, /etc/security/limits.conf फ़ाइल और /etc/security/limits.d/ में किसी भी फाइल को स्मृति सीमाओं पर प्रविष्टियों के लिए जांचें।

विशेष रूप से, इन दो:

data 
as 

कोटा कि पीएएम द्वारा लागू किया जा सकता है के लिए man limits.conf देखें।

+0

ulimit 'असीमित' दिखाता है, फ़ाइल /etc/security/limits.conf पूरी तरह से टिप्पणी की जाती है, और /etc/security/limits.d/ –

+0

@SagarJauhari ओह में कोई फ़ाइल नहीं है, क्षमा करें, 'ulimit -a' को आजमाएं स्मृति सीमा के लिए देखो! –

+0

मेरी गलती। उपरोक्त आउटपुट जोड़ा गया। –

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