freebsd-ports/devel/R-cran-bit/pkg-descr
TAKATSU Tomonari 1475098a61 - 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/
2015-08-09 07:33:33 +00:00

23 lines
1.4 KiB
Text

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/