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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
|
Source: libmmmulti
Priority: optional
Maintainer: Debian Med Packaging Team <debian-med-packaging@lists.alioth.debian.org>
Uploaders: Steffen Moeller <moeller@debian.org>,
Andreas Tille <tille@debian.org>,
Nilesh Patra <npatra974@gmail.com>
Build-Depends: debhelper-compat (= 13),
libargs-dev,
libatomicbitvector-dev,
libatomic-queue-dev,
libsdsl-dev,
libips4o-dev,
libparyfor-dev,
cmake
Standards-Version: 4.5.0
Section: libs
Homepage: https://github.com/ekg/mmmulti
Vcs-Browser: https://salsa.debian.org/med-team/libmmmulti
Vcs-Git: https://salsa.debian.org/med-team/libmmmulti.git
Rules-Requires-Root: no
Package: libmmmulti-dev
Section: libdevel
Architecture: all
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: header only library for mmmulti
Sometimes you have a lot of plain-old data, but you need random access
to it. These header-only classes combine memory-mapped files with
high-performance parallel sorting and appropriate indexing strategies
to support very large (>memory but <disk) multimaps, multisets, and
interval trees.
.
This implements a memory backed multimap intended for use where:
* your keys are integers, or can be mapped to dense range of integers,
* the memory mapped file is on fast storage, like an SSD (although
this is not a requirement),
* you have arbitrary values of fixed size (e.g. structs, other POD
types) that can be sorted,
* you don't need dynamic updates of the table,
* and you are likely to run out of memory of you use a traditional
map or hash table,
* but you can handle approximately 1 bit per record in RAM.
.
These may seem to be very specific, but many problems can be mapped into
a dense integer set. mmmulti::map developed first as a data structure
to support seqwish, which uses it to generate precise variation graphs
from pairwise alignments between collections of sequences. As this
multimap forms a key data processing kernel in the algorithm, it can
scale to extremely large problem sizes, limited only by available disk
space. Although performance is much slower than an in-memory structure,
it is virtually guaranteed to be able to complete the compute.
Package: mmmulti
Section: science
Architecture: any
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: memory backed multimap
This implements a memory backed multimap intended for use where:
* your keys are integers, or can be mapped to dense range of integers,
* the memory mapped file is on fast storage, like an SSD (although
this is not a requirement),
* you have arbitrary values of fixed size (e.g. structs, other POD
types) that can be sorted,
* you don't need dynamic updates of the table,
* and you are likely to run out of memory of you use a traditional
map or hash table,
* but you can handle approximately 1 bit per record in RAM.
.
These may seem to be very specific, but many problems can be mapped into
a dense integer set. mmmulti::map developed first as a data structure
to support seqwish, which uses it to generate precise variation graphs
from pairwise alignments between collections of sequences. As this
multimap forms a key data processing kernel in the algorithm, it can
scale to extremely large problem sizes, limited only by available disk
space. Although performance is much slower than an in-memory structure,
it is virtually guaranteed to be able to complete the compute.
|