Christophe, I saw your post on r-devel. It really belongs there. We add nothing by discussing / hiding this in the Debian BTS.
On 23 July 2011 at 21:05, Christophe Rhodes wrote: | Package: r-base-core | Version: 2.13.1-1 | Severity: normal | Tags: patch | | Hi, | | On my system, I need for various reasons to use the --max-vsize argument to have | R impose its own limit on its heap (rather than using ulimits). However, the | --max-vsize handling is off by a factor of 8, as can be seen by running R with | e.g. --max-vsize=100M and then executing gc() at the R prompt; the limit will be | displayed as 800Mb (where that "b" really does mean bytes -- i.e. I'm confident this | isn't intentional; for evidence try allocating a large vector of doubles with | x <- double(10000000) -- which should take up 80MB of heap -- and running gc() | again). | | The reason this happens is a bug in the memory initialization, in particular: when | vsfac is set, R_VSize is adjusted appropriately but not R_MaxVSize. I attach a | patch to fix this, which I have also sent to r-devel at | <http://permalink.gmane.org/gmane.comp.lang.r.devel/28532> | | Please let me know if there's anything else I can do. No, we need to engage R Core to pick it up there. I do not like our R engine to differ from what you'd get elsewhere so I am *not* in favour of patches changing behaviour. Let;s change this upstream, and close it here. Dirk | Christophe | | -- System Information: | Debian Release: wheezy/sid | APT prefers testing | APT policy: (500, 'testing') | Architecture: amd64 (x86_64) | | Kernel: Linux 2.6.39-2-amd64 (SMP w/4 CPU cores) | Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8) | Shell: /bin/sh linked to /bin/dash | | Versions of packages r-base-core depends on: | ii libblas3gf [libblas.so. 1.2-8 Basic Linear Algebra Reference imp | ii libbz2-1.0 1.0.5-6 high-quality block-sorting file co | ii libc6 2.13-7 Embedded GNU C Library: Shared lib | ii libcairo2 1.10.2-6 The Cairo 2D vector graphics libra | ii libgfortran3 4.6.1-4 Runtime library for GNU Fortran ap | ii libglib2.0-0 2.28.6-1 The GLib library of C routines | ii libgomp1 4.6.1-4 GCC OpenMP (GOMP) support library | ii libice6 2:1.0.7-2 X11 Inter-Client Exchange library | ii libjpeg62 6b1-1 The Independent JPEG Group's JPEG | ii liblapack3gf [liblapack 3.2.1-8 library of linear algebra routines | ii liblzma2 5.0.0-2 XZ-format compression library | ii libpango1.0-0 1.28.4-1 Layout and rendering of internatio | ii libpaper-utils 1.1.24+nmu1 library for handling paper charact | ii libpcre3 8.12-3 Perl 5 Compatible Regular Expressi | ii libpng12-0 1.2.46-1 PNG library - runtime | ii libquadmath0 4.6.1-4 GCC Quad-Precision Math Library | ii libreadline6 6.2-2 GNU readline and history libraries | ii libsm6 2:1.2.0-2 X11 Session Management library | ii libtiff4 3.9.5-1 Tag Image File Format (TIFF) libra | ii libx11-6 2:1.4.3-2 X11 client-side library | ii libxext6 2:1.3.0-3 X11 miscellaneous extension librar | ii libxss1 1:1.2.1-1 X11 Screen Saver extension library | ii libxt6 1:1.1.1-2 X11 toolkit intrinsics library | ii tcl8.5 8.5.10-1 Tcl (the Tool Command Language) v8 | ii tk8.5 8.5.10-1 Tk toolkit for Tcl and X11, v8.5 - | ii ucf 3.0025+nmu2 Update Configuration File: preserv | ii unzip 6.0-5 De-archiver for .zip files | ii xdg-utils 1.1.0~rc1-2 desktop integration utilities from | ii zip 3.0-4 Archiver for .zip files | ii zlib1g 1:1.2.3.4.dfsg-3 compression library - runtime | | Versions of packages r-base-core recommends: | ii r-base-dev 2.13.1-1 GNU R installation of auxiliary GN | ii r-doc-html 2.13.1-1 GNU R html manuals for statistical | ii r-recommended 2.13.1-1 GNU R collection of recommended pa | | Versions of packages r-base-core suggests: | ii ess 5.13-1 Emacs mode for statistical program | ii r-base-html 2.13.1-1 GNU R html docs for statistical co | pn r-doc-info | r-doc-pdf <none> (no description available) | pn r-mathlib <none> (no description available) | | -- no debconf information | | ---------------------------------------------------------------------- | >From 933ab0cfca4657eba217edc99094fd509223e657 Mon Sep 17 00:00:00 2001 | From: Christophe Rhodes <cs...@cantab.net> | Date: Thu, 21 Jul 2011 14:40:34 +0100 | Subject: [PATCH] src/main/memory.c: set R_MaxVSize when assigning to vsfac | | Fixes --max-vsize command-line option (previously generated a | limit too great by a factor of 8 on my machines) | --- | src/main/memory.c | 2 +- | 1 files changed, 1 insertions(+), 1 deletions(-) | | diff --git a/src/main/memory.c b/src/main/memory.c | index f514ffd..46b5d44 100644 | --- a/src/main/memory.c | +++ b/src/main/memory.c | @@ -1877,7 +1877,7 @@ void attribute_hidden InitMemory() | #endif | vsfac = sizeof(VECREC); | R_VSize = (((R_VSize + 1)/ vsfac)); | - | + R_SetMaxVSize(R_MaxVSize); | UNMARK_NODE(&UnmarkedNodeTemplate); | | for (i = 0; i < NUM_NODE_CLASSES; i++) { | -- | 1.7.5.4 | -- Gauss once played himself in a zero-sum game and won $50. -- #11 at http://www.gaussfacts.com -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org