go3: A Fast and Lightweight Library for Semantic Similarity of GO Terms and Genes

preprint OA: closed
📄 Open PDF View at publisher

Abstract

Motivation Calculation of semantic similarity of Gene Ontology (GO) term subsets is a fundamental task in functional genomics, comparative studies, and biomedical data integration. Existing tools, primarily in Python or R, often face severe limitations in performance when scaling to large annotation datasets. Results We present go3, the first high-performance, Python-compatible library written in Rust that supports multiple semantic similarity metrics for GO terms and genes. go3 supports both pairwise and batch computations, optimized using Rust’s parallelism and memory safety. Compared to GOATOOLS, the state of the art, it achieves up to 5x speedup and 25x lower memory footprint when loading the GO ontology and gene annotations, and up to x 10 3 speedup when calculating semantic similarities between genes, while preserving output compatibility. Availability and implementation go3 is implemented in Rust and available through Python 3. It is accessible in GitHub: ( https://github.com/Mellandd/GO3 ). Contact [email protected]

My notes (saved in your browser only)

Citation neighborhood (no data yet)

We don't have any in-corpus citations linked to this paper yet. This is a recent paper (2025) — citers typically take a year or two to land, and the OpenAlex reference graph may still be filling in.

Source provenance

europepmc
last seen: 2026-05-20T01:45:00.602351+00:00