jvecfor
This is the development version of jvecfor; for the stable release version, see jvecfor.
Fast K-Nearest Neighbor Search for Single-Cell Analysis
Bioconductor version: Development (3.24)
Drop-in replacement for BiocNeighbors::findKNN using the jvecfor Java library, which builds on the jvector library to leverage the Java Vector API for portable SIMD acceleration across AVX2, AVX-512, and ARM NEON hardware. jvecfor/jvector implements HNSW-DiskANN approximate search and VP-tree exact search. The package achieves approximately 2x speedup over Annoy-based search at n >= 50K cells while returning output structurally identical to BiocNeighbors, making it suitable for seamless integration into existing Bioconductor single-cell workflows. Convenience wrappers delegate shared nearest-neighbor (SNN) and k-nearest-neighbor (KNN) graph construction to the bluster package.
Author: Anestis Gkanogiannis [aut, cre]
Maintainer: Anestis Gkanogiannis <anestis at gkanogiannis.com>
citation("jvecfor")):
Huber W, Carey VJ, Gentleman R, Anders S, Carlson M, Carvalho BS, Bravo HC, Davis S, Gatto L, Girke T, Gottardo R, Hahne F, Hansen KD, Irizarry RA, Lawrence M, Love MI, MacDonald J, Obenchain V, Oleś AK, Pagès H, Reyes A, Shannon P, Smyth GK, Tenenbaum D, Waldron L, Morgan M (2015). "Orchestrating high-throughput genomic analysis with Bioconductor." Nature Methods, 12(2), 115–121. doi:10.1038/nmeth.3252.
Gentleman RC, Carey VJ, Bates DM, Bolstad B, Dettling M, Dudoit S, Ellis B, Gautier L, Ge Y, Gentry J, Hornik K, Hothorn T, Huber W, Iacus S, Irizarry R, Leisch F, Li C, Maechler M, Rossini AJ, Sawitzki G, Smith C, Smyth G, Tierney L, Yang JYH, Zhang J (2004). "Bioconductor: open software development for computational biology and bioinformatics." Genome Biology, 5(10), R80. doi:10.1186/gb-2004-5-10-r80.
Installation
To install this package, start R (version "4.6") and enter:
if (!require("BiocManager", quietly = TRUE))
install.packages("BiocManager")
## The following initializes the development version of Bioconductor
BiocManager::install(version = "devel")
BiocManager::install("jvecfor")
For older versions of R, please refer to the appropriate Bioconductor release.
Documentation
To view documentation for the version of this package installed in your system, start R and enter:
browseVignettes("jvecfor")
| jvecfor | HTML | R Script |
| Reference Manual | ||
| NEWS | Text |
Details
| biocViews | Classification, Clustering, GraphAndNetwork, SingleCell, Software |
| Version | 1.1.0 |
| In Bioconductor since | BioC 3.23 (R-4.6) (< 6 months) |
| License | GPL-3 |
| Depends | R (>= 4.6.0) |
| Imports | BiocNeighbors, BiocParallel, Matrix, bluster, data.table, methods, processx |
| System Requirements | Java (>= 20) |
| URL | https://github.com/gkanogiannis/jvecfor |
| Bug Reports | https://github.com/gkanogiannis/jvecfor/issues |
See More
| Suggests | BiocStyle, igraph, knitr, rmarkdown, testthat (>= 3.0.0) |
| Linking To | |
| Enhances | |
| Depends On Me | |
| Imports Me | |
| Suggests Me | |
| Links To Me | |
| Build Report | Build Report |
Package Archives
Follow Installation instructions to use this package in your R session.
| Source Package | jvecfor_1.1.0.tar.gz |
| Windows Binary (x86_64) | |
| macOS Binary (big-sur-x86_64) | jvecfor_1.1.0.tgz |
| macOS Binary (sonoma-arm64) | jvecfor_1.1.0.tgz |
| Source Repository | git clone https://git.bioconductor.org/packages/jvecfor |
| Source Repository (Developer Access) | git clone git@git.bioconductor.org:packages/jvecfor |
| Bioc Package Browser | https://code.bioconductor.org/browse/jvecfor/ |
| Package Short Url | https://bioconductor.org/packages/jvecfor/ |
| Package Downloads Report | Download Stats |