Rdragmap is a history-preserving hard fork of
sounkou-bioinfo/DRAGMAP,
starting from commit 4f98e00e2aedc85e27ea6c118cf7b16663036c14. It
preserves imported DRAGMAP mapping behavior while making the native
build portable and exposing a source-built R package wrapper.
The native command remains dragen-os. The package in
Rdragmap/ owns its installed executable and exposes
index-generation and FASTQ-to-SAM R operations without searching PATH.
- Ordinary translation units use a portable C++17 and SIMDe baseline without global x86 ISA flags.
- Native AVX2 Smith-Waterman code is one separately compiled object entered only after a runtime CPU and operating-system capability check.
- Baseline x86 and auto-dispatched builds pass.
- The reusable native source set cross-compiles to AArch64/NEON. Native AArch64 execution has not yet been run.
- Hash artifacts and complete real-exome SAM output match untouched DRAGMAP, subject only to the documented SAM header corrections.
See CONFORMANCE.md for the evidence matrix, ERRATA.md for admitted corrections, and benchmarks/hs37d5-hg02088/README.md for the executed human-reference benchmark.
- a C++17 compiler;
- GNU Make;
- zlib;
- Boost Iostreams and Program Options;
- GoogleTest when building tests.
A full human-reference hash build used about 62 GiB peak RSS in the recorded hs37d5 run. Full-exome mapping used about 38 GiB peak RSS.
Build the portable baseline without AVX2:
make clean
make HAS_GTEST=0 DRAGMAP_HAVE_AVX2=0Build with compiler-probed AVX2 dispatch where supported:
make clean
make HAS_GTEST=0The executable is written to build/release/dragen-os. To install it
under /usr/bin:
make installShow the selected SIMD configuration with:
make simd-infoRun the self-contained native test gate with:
make testThis target runs imported unit and integration tests plus the focused raw-CRC and mapping-metrics regressions. It intentionally excludes three imported exploratory reference programs that require a specific historical external index. Their status and the reason an earlier aggregate GoogleTest job was labelled failed are recorded in CONFORMANCE.md.
Run the deterministic untouched-upstream differential gate with:
make compatibility-checkBuild a reference hash table:
build/release/dragen-os \
--build-hash-table true \
--ht-reference reference.fasta \
--output-directory reference-indexAlign paired reads to SAM on standard output:
build/release/dragen-os \
-r reference-index \
-1 reads_1.fastq.gz \
-2 reads_2.fastq.gz \
> result.samAlign single-end reads:
build/release/dragen-os \
-r reference-index \
-1 reads.fastq.gz \
> result.samList all command-line options with:
build/release/dragen-os --help--ht-mask-bed masks listed reference intervals before hash seeding.
This is not complete ALT liftover support. The imported liftover
generator is absent and mapper liftover handling remains incomplete.
Rdragmap does not claim graph reference or full ALT-aware mapping
behavior.
Rdragmap/ is a source-built R package that owns and
discovers its installed dragen-os executable without searching PATH.
It exposes explicit, typed R operations to build a v8 reference index
and align single or paired FASTQ to SAM. The wrapper records native
mapping metrics and paired-end insert statistics beside the requested
SAM output.
The package preserves the child-process boundary because the native
archives are internal link units, not a supported R ABI. Rdragmap has
a reproducible native source closure, configure-time compilation with
R’s compiler and make, roxygen-generated documentation, tinytest
coverage, and tarball-based checks. See
Rdragmap/README.md for installation and use.
Imported history and notices remain authoritative. See COPYRIGHT and the source headers for upstream attribution and licensing. Vendored SIMDe provenance and its license are also recorded there.