diff options
author | tota <tota@FreeBSD.org> | 2015-08-09 15:33:33 +0800 |
---|---|---|
committer | tota <tota@FreeBSD.org> | 2015-08-09 15:33:33 +0800 |
commit | cd38a5e45503e2d819db917e79eb0149a33caad4 (patch) | |
tree | 1f7b06db3ca3d0830203e7c41b9ee8300bd59d7b | |
parent | 281717ca708dd516d47731bc1a9492324f61ac25 (diff) | |
download | freebsd-ports-gnome-cd38a5e45503e2d819db917e79eb0149a33caad4.tar.gz freebsd-ports-gnome-cd38a5e45503e2d819db917e79eb0149a33caad4.tar.zst freebsd-ports-gnome-cd38a5e45503e2d819db917e79eb0149a33caad4.zip |
- 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/
-rw-r--r-- | devel/Makefile | 1 | ||||
-rw-r--r-- | devel/R-cran-bit/Makefile | 16 | ||||
-rw-r--r-- | devel/R-cran-bit/distinfo | 2 | ||||
-rw-r--r-- | devel/R-cran-bit/pkg-descr | 23 |
4 files changed, 42 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile index 53f949ec30d7..a2bf6d897c42 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -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 diff --git a/devel/R-cran-bit/Makefile b/devel/R-cran-bit/Makefile new file mode 100644 index 000000000000..9a89ac32cb7e --- /dev/null +++ b/devel/R-cran-bit/Makefile @@ -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> diff --git a/devel/R-cran-bit/distinfo b/devel/R-cran-bit/distinfo new file mode 100644 index 000000000000..c47af7db95e4 --- /dev/null +++ b/devel/R-cran-bit/distinfo @@ -0,0 +1,2 @@ +SHA256 (bit_1.1-12.tar.gz) = ce281c87fb7602bf1a599e72f3e25f9ff7a13e390c124a4506087f69ad79d128 +SIZE (bit_1.1-12.tar.gz) = 53737 diff --git a/devel/R-cran-bit/pkg-descr b/devel/R-cran-bit/pkg-descr new file mode 100644 index 000000000000..2f7f34e3bf13 --- /dev/null +++ b/devel/R-cran-bit/pkg-descr @@ -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/ |