wake-up-neo.net

Erhöhen (oder Verringern) des für R-Prozesse verfügbaren Speichers

Ich möchte die für R verfügbare Speicherkapazität erhöhen (oder verringern). Welche Methoden stehen zur Verfügung, um dies zu erreichen?

115
medriscoll

Von:

http://gking.harvard.edu/zelig/docs/How_do_I2.html ( mirror )

Windows-Benutzer erhalten möglicherweise den Fehler, dass R nicht genügend Arbeitsspeicher hat.

Wenn Sie R bereits installiert haben und anschließend mehr RAM installieren, müssen Sie R möglicherweise neu installieren, um die zusätzliche Kapazität zu nutzen.

Sie können den verfügbaren Speicher auch manuell einstellen. Schließen Sie R und klicken Sie mit der rechten Maustaste auf das R-Programmsymbol (das Symbol auf Ihrem Desktop oder in Ihrem Programmverzeichnis). Wählen Sie "Eigenschaften" und dann die Registerkarte "Verknüpfung". Suchen Sie nach dem Feld `` Target '' und fügen Sie nach den schließenden Anführungszeichen um den Speicherort des R-Programms hinzu

--max-mem-size = 500 MB

wie in der folgenden Abbildung gezeigt. Sie können diesen Wert auf bis zu 2 GB oder die von Ihnen installierte maximale Anzahl an physischen RAM erhöhen.

Wenn Sie die Fehlermeldung erhalten, dass R keinen Vektor der Länge x zuordnen kann, schließen Sie R und fügen Sie die folgende Zeile in das Feld `` Target '' ein:

- max-vsize = 500 M

oder nach Bedarf. Sie können jederzeit überprüfen, wie viel Speicher R verfügbar ist, indem Sie an der Eingabeaufforderung R eingeben

memory.limit()

dies gibt Ihnen die Menge des verfügbaren Speichers in MB. In früheren Versionen von R mussten Sie Folgendes verwenden: round(memory.limit()/2^20, 2).

64
BobbyShaftoe

Verwenden Sie memory.limit(). Sie können den Standardwert mit dem Befehl memory.limit(size=2500) erhöhen, wobei die Größe in MB angegeben wird. Sie müssen 64-Bit verwenden, um dies wirklich nutzen zu können.

Ein weiterer Vorschlag besteht darin, speichereffiziente Objekte zu verwenden, wo immer dies möglich ist: Verwenden Sie beispielsweise eine Matrix anstelle eines data.frame.

45
Shane
  1. Kaufe mehr RAM
  2. Wechseln Sie zu einem 64-Bit-Betriebssystem. Mit Punkt 1 kombinieren.
7

Microsoft Windows akzeptiert alle Speicheranforderungen von Prozessen, sofern dies möglich ist.

Es gibt keine Begrenzung für den Speicher, der einem Prozess bereitgestellt werden kann, mit Ausnahme der Größe des virtuellen Speichers.

Die Größe des virtuellen Speichers beträgt 4 GB in 32-Bit-Systemen für alle Prozesse, unabhängig davon, wie viele Anwendungen Sie ausführen. Beliebige Prozesse können in 32-Bit-Systemen bis zu 4 GB Speicher zuweisen.

In der Praxis weist Windows einige Teile des zugewiesenen Speichers automatisch aus RAM oder Auslagerungsdatei zu, je nach Prozessanforderungen und Auslagerungsdateimechanismus.

Eine weitere Grenze ist die Größe der Auslagerungsdatei. Wenn Sie eine kleine Auslagerungsdatei haben, können Sie keine großen Speicher zuweisen. Sie können die Größe der Auslagerungsdatei entsprechend Microsoft erhöhen, um mehr Speicherplatz zu haben.

7
Isaac