1

R プロセスのメモリ制限を制限するために「mem.limits」を使用しています。例えば:

mem.limits(500000, 20000000)
gc() #see limits
x <- rnorm(1e8); #should fail

これでも問題なく動作しますが、R 2.14 以降では警告メッセージが表示されます。

警告メッセージ: 「mem.limits」は非推奨です。代わりに「gc」を使用してください。ヘルプを参照してください("非推奨")

今、私はこれをどうするかわかりません。ガベージ コレクションは、メモリ制限の設定にどのように関連していますか?

4

1 に答える 1

3

R 2.14.x では非推奨ですが、引き続き機能します。

> R.version.string
[1] "R version 2.14.0 (2011-10-31)"
> mem.limits(500000, 20000000)
nsize vsize 
5e+05 2e+07 
Warning message:
'mem.limits' is deprecated.
Use 'gc' instead.
See help("Deprecated") 
> gc() #see limits
         used (Mb) gc trigger (Mb) limit (Mb) max used (Mb)
Ncells 170754  9.2     350000 18.7       26.8   350000 18.7
Vcells 272683  2.1     905753  7.0       19.1   851886  6.5
> x <- rnorm(1e8); #should fail
Error: vector memory exhausted (limit reached?)

R-devel では、すべての制限が無効になっています。この機能は削除されましたが、置き換えはありません。詳細については、R 2.14.0 の NEWS および PR#14795 を参照してください。

于 2012-02-06T05:26:36.413 に答える