Rate This Document
Findability
Accuracy
Completeness
Readability

Introduction to KVecTurbo

Latest Updates

  • [2025.09.30]: Added support for datasets with over ten million base vectors
  • [2025.03.30]: Introduced KVecTurbo, a vector retrieval acceleration component developed by Kunpeng. It works with the openGauss vector database. It quantizes and compresses high-dimensional vectors to quickly obtain the near neighbors of a query, and uses the SIMD instructions to accelerate distance calculation.

Project Introduction

KVecTurbo is a proprietary vector retrieval acceleration component and can work with the openGauss vector database. It quantifies and compresses high-dimensional vectors to quickly obtain the near neighbors of a query. In addition, KVecTurbo uses the SIMD instructions to accelerate distance calculation for multidimensional vector nearest neighbor search.

KVecTurbo is applicable to Kunpeng 920 processors and supports NEON instructions (128-bit width).

Directory Structure

The full directory structure of the KVecTurbo open-source repository is as follows:

kvecturbo
├── include
│   └── kvecturbo.h          // Public APIs, structures, and macro definitions
├── src
│   └── kvecturbo.cpp        // K-means, PQ encoding/search, and SIMD acceleration
├── test                     // Unit test (UT)
└── docs
 ├──en
   ├── public_sys-resources
   ├── api_reference.md             // API reference
   ├── installation_guide.md        // Installation guide
   ├── quick_start.md               // Quick start
   ├── release_notes.md             // Release notes
 └── LICENSE

Release Notes

Release Notes provides details about the version updates of KVecTurbo.

Documents

Resource Type

Resource Name

Resource Description

Document

Release Notes

Provides basic information and feature updates for each KVecTurbo version.

Document

Quick Start

Provides guidance for getting started with KVecTurbo.

Document

Installation Guide

Provides guidance for compiling and installing KVecTurbo.

Document

API Reference

Provides definitions and descriptions of KVecTurbo APIs.

Disclaimer

This code repository contributes to the openGauss community's open-source projects solely for vector retrieval acceleration. It strictly adheres to the coding style and methods, as well as security design of the native open-source software. Any vulnerability and security issues of the software shall be resolved by the corresponding upstream communities according to their response mechanisms. Please pay attention to the notifications and version updates released by the upstream communities. The Kunpeng computing community does not assume any responsibility for software vulnerabilities and security issues.

License

KVecTurbo is licensed under the Apache 2.0 license, which allows modification and redistribution of derivative works as open source. For details, see LICENSE.

The documents of this project are licensed under CC-BY 4.0. For details, see LICENSE.

Contribution Statement

We welcome your contributions to the community. If you have any questions/suggestions or want to provide feedback on feature requirements and bug reports, you can submit issues. For details, see Contribution Guideline. You are also welcome to share insights in the Discussions. Thank you for your support.

Acknowledgments

KVecTurbo is jointly developed by the following Huawei department:

  • Kunpeng Computing BoostKit Development Dept

Thank you to everyone in the community for your PRs. We warmly welcome contributions to KVecTurbo!