R nicht mit mehr als 4 GB Speicher
Ich bin mit 64-bit R auf Ubuntu 12.10 AMD64. Vor kurzem habe ich zusätzliche 8 GB Speicher auf meinem system, so dass es insgesamt 12 GB. Ich merke aber, dass R gibt mir eine Fehlermeldung, wenn der Speicher-Nutzung (eines Einzel-R Sitzung) geht über 4GB. Wenn ich ran 6 R sessions parallel, jeder verbraucht ~ 3 GB Arbeitsspeicher, meiner über alles Speicherauslastung um bis zu 11 GB. Aber eine einzige R-Sitzung nicht in der Lage, mehr als 4GB!
Ich muss trainieren eines random forest Modell über einen großen Datensatz, und ich muss > 4GB mit einem einzigen R-Sitzung.
Update:
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
Update 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
- Ich habe kein problem mit 64-bit R-Fedora-AMD64. Ich habe es verwenden, 30G vor. Vielleicht haben Sie die Prozess-Quoten?
- kannst du die Ausgabe von
sessionInfo()
? - Hinzugefügt die Ausgabe von sessionInfo()
- Macht der shell-Befehl
ulimit
zeigen alles andere alsunlimited
? - Ich nehme es, dass
ulimit
zeigen keine Quoten, noch sind Speicher Quoten durchgesetzt von PAM? - Was bedeutet
Sys.getenv("R_MAX_MEM_SIZE")
undmemory.limit()
zurück?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich vermute, dass Sie Prozess-Grenzen im Platz einschränken, um einem bestimmten Vorgang zu 4G.
Versuchen
ulimit -a
und Blick für alle nicht-unbegrenzte Werte auf den Speicher beziehen.Überprüfen Sie außerdem die Datei
/etc/security/limits.conf
und alle Dateien in/etc/security/limits.d/
für Einträge auf Speicher begrenzt.Insbesondere diese beiden:
Sehen
man limits.conf
für die Quoten, die durchgesetzt werden können, die von PAM.ulimit -a
zu suchen, memory-limits!Im Windows-Betriebssystem standardmäßig, R installiert sowohl 32-und 64-bit-Versionen. Obwohl, es sieht aus wie Linux nicht. Wenn Sie eine IDE wie RStudio es, wenn installiert, verweist auf die 32-bit-version. Sie können dies ändern, in dem Rstudio Einstellungen.
sessionInfo()
im bearbeiteten Frage. Und ich bin nicht sicher, ob Ubuntu installiert die 32-bit-version, wenn Sie die Installation der 64-bit-version. Fedora nicht.