Path to this page:
./
devel/Rbit,
Class for vectors of 1bit booleans
Branch: CURRENT,
Version: 1.1.12,
Package name: Rbit1.1.12,
Maintainer: minskimbitmapped 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 onetime boolean operations it can payoff to
convert to bit, the payoff 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 preallocated
memory for return values by calling .Call() directly: when evaluating
the speed of Caccess with preallocated 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 (ff2.10
and higher).
Required to run:[
math/R]
Required to build:[
pkgtools/cwrappers]
Master sites: (Expand)
Version history: (Expand)
 (20180306) Package added to pkgsrc.se, version Rbit1.1.12 (created)
CVS history: (Expand)
20180306 18:06:28 by Min Sik Kim  Files touched by this commit (3) 
Log message:
devel/Rbit: Import version 1.1.12
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 onetime boolean operations it can payoff to
convert to bit, the payoff 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 preallocated
memory for return values by calling .Call() directly: when evaluating
the speed of Caccess with preallocated 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 (ff2.10
and higher).
