GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Alternative zu Rs `memory.size()` unter Linux?

Ich denke, dass dies vom Betriebssystem gehandhabt werden sollte. Mir ist kein eingebautes Limit bekannt; Falls erforderlich, verwendet R den gesamten Speicher, den es bekommen kann.

Um Informationen über den Gesamtspeicher und/oder den verfügbaren Speicher unter Linux zu erhalten, können Sie versuchen

system('grep MemTotal /proc/meminfo')

oder

system('free -m')

oder

system('lshw -class memory')

Der letzte Befehl wird sich darüber beschweren, dass Sie dies als Superuser ausführen sollten, und es wird eine Warnung geben, dass die Ausgabe möglicherweise nicht korrekt ist. aber nach meiner Erfahrung wird es immer noch eine ziemlich nützliche Ausgabe liefern.

Um Informationen über den Speicherverbrauch eines laufenden R-Skripts zu erhalten, könnte man entweder die aktuell verwendeten Ressourcen überwachen, indem man top startet in einem separaten Terminal oder verwenden Sie z. B. den folgenden Systemaufruf aus dem R-Skript heraus:

system(paste0("cat /proc/",Sys.getpid(),"/status | grep VmSize"))

Hoffe das hilft.


Verwenden von pryr Bibliothek:

library("pryr")

mem_used()
# 27.9 MB

x <- mem_used()
x
# 27.9 MB
class(x)
# [1] "bytes"

Das Ergebnis ist dasselbe wie die Antwort von @RHertel, mit pryr wir können das Ergebnis einer Variablen zuweisen.

system('grep MemTotal /proc/meminfo')
# MemTotal:       263844272 kB

Um eine Variable mit Systemaufruf zuzuweisen, verwenden Sie intern = TRUE :

x <- system('grep MemTotal /proc/meminfo', intern = TRUE)
x
# [1] "MemTotal:       263844272 kB"
class(x)
# [1] "character"

Linux
  1. So ändern Sie den Hostnamen unter Linux

  2. bat-Befehl im Ubuntu 20.04 LTS-Linux-System – Alternative zum cat-Befehl

  3. So steuern Sie die Systemressourcennutzung mit ulimit in Linux

  4. So überprüfen Sie die Heap-Größe für einen Prozess unter Linux

  5. Wie groß ist ein atomarer Schreibvorgang auf der Festplatte meines Systems?

Sichern eines geerbten Linux-Systems

Die Einführung eines Linux-Systemadministrators in cgroups

Dokumentieren der Systemverfügbarkeit in Linux

Stacer Linux-Systemoptimierer und -überwachung

So listen Sie Dienste unter Linux auf

Top alternative Linux-Distributionen zu Windows XP