1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
Source: r-cran-bit
Section: gnu-r
Priority: optional
Maintainer: Debian R Packages Maintainers <r-pkg-team@alioth-lists.debian.net>
Uploaders: Andreas Tille <tille@debian.org>
Vcs-Browser: https://salsa.debian.org/r-pkg-team/r-cran-bit
Vcs-Git: https://salsa.debian.org/r-pkg-team/r-cran-bit.git
Homepage: https://cran.r-project.org/package=bit
Standards-Version: 4.7.2
Rules-Requires-Root: no
Build-Depends: debhelper-compat (= 13),
dh-r,
r-base-dev
Testsuite: autopkgtest-pkg-r
Package: r-cran-bit
Architecture: any
Depends: ${R:Depends},
${shlibs:Depends},
${misc:Depends}
Recommends: ${R:Recommends}
Suggests: ${R:Suggests}
Description: GNU R class for vectors of 1-bit booleans
This GNU R package provides 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 one 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).
|