Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 9 Aug 2015 07:33:34 +0000 (UTC)
From:      TAKATSU Tomonari <tota@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r393764 - in head/devel: . R-cran-bit
Message-ID:  <201508090733.t797XYEA027919@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: tota
Date: Sun Aug  9 07:33:33 2015
New Revision: 393764
URL: https://svnweb.freebsd.org/changeset/ports/393764

Log:
  - Add new port: devel/R-cran-bit
  
    bitmapped vectors of booleans (no NAs), coercion from and to logicals,
    integers and integer subscripts; fast boolean operators and fast
    summary statistics. With 'bit' vectors you can store true binary
    booleans {FALSE,TRUE} at the expense of 1 bit only, on a 32 bit
    architecture this means factor 32 less RAM and ~ factor 32 more
    speed on boolean operations. Due to overhead of R calls, actual
    speed gain depends on the size of the vector: expect gains for
    vectors of size > 10000 elements. Even for one-time boolean operations
    it can pay-off to convert to bit, the pay-off is obvious, when such
    components are used more than once. Reading from and writing to bit
    is approximately as fast as accessing standard logicals - mostly
    due to R's time for memory allocation. The package allows to work
    with pre-allocated memory for return values by calling .Call()
    directly: when evaluating the speed of C-access with pre-allocated
    vector memory, coping from bit to logical requires only 70% of the
    time for copying from logical to logical; and copying from logical
    to bit comes at a performance penalty of 150%. the package now
    contains further classes for representing logical selections:
    'bitwhich' for very skewed selections and 'ri' for selecting ranges
    of values for chunked processing. All three index classes can be
    used for subsetting 'ff' objects (ff-2.1-0 and higher).
  
    WWW: https://cran.r-project.org/web/packages/bit/

Added:
  head/devel/R-cran-bit/
  head/devel/R-cran-bit/Makefile   (contents, props changed)
  head/devel/R-cran-bit/distinfo   (contents, props changed)
  head/devel/R-cran-bit/pkg-descr   (contents, props changed)
Modified:
  head/devel/Makefile

Modified: head/devel/Makefile
==============================================================================
--- head/devel/Makefile	Sun Aug  9 06:57:11 2015	(r393763)
+++ head/devel/Makefile	Sun Aug  9 07:33:33 2015	(r393764)
@@ -12,6 +12,7 @@
     SUBDIR += R-cran-Hmisc
     SUBDIR += R-cran-RUnit
     SUBDIR += R-cran-Rcpp
+    SUBDIR += R-cran-bit
     SUBDIR += R-cran-bitops
     SUBDIR += R-cran-caTools
     SUBDIR += R-cran-caret

Added: head/devel/R-cran-bit/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/R-cran-bit/Makefile	Sun Aug  9 07:33:33 2015	(r393764)
@@ -0,0 +1,16 @@
+# Created by: TAKATSU Tomonari <tota@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME=	bit
+DISTVERSION=	1.1-12
+CATEGORIES=	devel
+DISTNAME=	${PORTNAME}_${DISTVERSION}
+
+MAINTAINER=	tota@FreeBSD.org
+COMMENT=	Class for vectors of 1-bit booleans
+
+LICENSE=	GPLv2
+
+USES=	cran:auto-plist
+
+.include <bsd.port.mk>

Added: head/devel/R-cran-bit/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/R-cran-bit/distinfo	Sun Aug  9 07:33:33 2015	(r393764)
@@ -0,0 +1,2 @@
+SHA256 (bit_1.1-12.tar.gz) = ce281c87fb7602bf1a599e72f3e25f9ff7a13e390c124a4506087f69ad79d128
+SIZE (bit_1.1-12.tar.gz) = 53737

Added: head/devel/R-cran-bit/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/R-cran-bit/pkg-descr	Sun Aug  9 07:33:33 2015	(r393764)
@@ -0,0 +1,23 @@
+bitmapped vectors of booleans (no NAs), coercion from and to logicals,
+integers and integer subscripts; fast boolean operators and fast
+summary statistics. With 'bit' vectors you can store true binary
+booleans {FALSE,TRUE} at the expense of 1 bit only, on a 32 bit
+architecture this means factor 32 less RAM and ~ factor 32 more
+speed on boolean operations. Due to overhead of R calls, actual
+speed gain depends on the size of the vector: expect gains for
+vectors of size > 10000 elements. Even for one-time boolean operations
+it can pay-off to convert to bit, the pay-off is obvious, when such
+components are used more than once. Reading from and writing to bit
+is approximately as fast as accessing standard logicals - mostly
+due to R's time for memory allocation. The package allows to work
+with pre-allocated memory for return values by calling .Call()
+directly: when evaluating the speed of C-access with pre-allocated
+vector memory, coping from bit to logical requires only 70% of the
+time for copying from logical to logical; and copying from logical
+to bit comes at a performance penalty of 150%. the package now
+contains further classes for representing logical selections:
+'bitwhich' for very skewed selections and 'ri' for selecting ranges
+of values for chunked processing. All three index classes can be
+used for subsetting 'ff' objects (ff-2.1-0 and higher).
+
+WWW: https://cran.r-project.org/web/packages/bit/



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201508090733.t797XYEA027919>