jn_cuclark is a GPU-accelerated metagenomic classification package for Jetson Nano-class systems. It combines the CUDA-enabled cuCLARK core with two C++ front ends:
kent: single-node orchestration for database setup, classification, abundance estimation, and report generationkent-mpi: MPI-based coordination for multi-node runs
This repository contains the software stack. Reference databases and sequencing reads are not bundled here.
src/: CUDA/C++ implementation ofcuCLARK,cuCLARK-l, and helper binariesapp/kent.cpp: single-node CLI wrapper around the shell scripts inscripts/app/kent_mpi.cpp: MPI coordinator that launcheskentacross multiple nodesscripts/: database setup, classification, abundance estimation, taxonomy update, and download helpersconfig/cluster.conf.example: sanitized template for cluster execution
- Linux with a C++11-capable compiler and GNU Make
- NVIDIA CUDA Toolkit for the full
cuCLARKbuild - OpenMPI for
kent-mpi
Full replication requires a CUDA-enabled system. Building kent alone without CUDA is useful for orchestration development, but it is not a substitute for the full GPU workflow.
./install.sh
./bin/kent --verifyThen configure a database and run classification:
./bin/kent -d /path/to/database
./bin/kent -c -O /path/to/reads.fastq -R results/sample.csv
./bin/kent -a /path/to/database results/sample.csv
./bin/kent -r./bin/kent -h
./bin/kent --verify
./bin/kent -d /path/to/database
./bin/kent -c -O /path/to/reads.fastq -R results/sample.csv
./bin/kent -a /path/to/database results/sample.csv
./bin/kent -m results/run1.csv results/run2.csv -o combined.csv
./bin/kent -rNotes:
kent -dmust be run before classification so thatscripts/set_targets.shcan generatescripts/.settings.- The shell scripts in
scripts/expect to run from thescripts/directory.kentandkent-mpihandle that automatically. - Generated results go to
results/; logs go tologs/.
- Copy the cluster template:
cp config/cluster.conf.example config/cluster.conf-
Edit
config/cluster.conffor your environment. -
Run preflight checks, then launch:
./bin/kent-mpi -c config/cluster.conf -p
./bin/kent-mpi -c config/cluster.confThe MPI configuration file uses INI syntax with [section] headers and key = value pairs.
See STRUCTURE.md for an accurate file-by-file overview of the public tree.
This repository is distributed under the GNU General Public License, version 3 or later. See LICENSE.