explaingit

psychip/vec

Analysis updated 2026-05-18

0C++Audience · developerComplexity · 4/5Setup · moderate

TLDR

VEC is a vector database that runs entirely in GPU memory for very fast similarity search on embeddings.

Mindmap

mindmap
  root((VEC vector database))
    What it does
      GPU resident storage
      Fast similarity search
      Exact brute force scan
    Tech stack
      C++
      CUDA
      Client libraries
    Use cases
      Embedding search
      Clustering
      No server setup
    Requires
      NVIDIA RTX 2000 plus

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Run nearest-neighbor search across a million vectors in milliseconds.

USE CASE 2

Store and query AI embeddings without setting up a separate database server.

USE CASE 3

Cluster similar vectors together using the built-in DBSCAN algorithm.

USE CASE 4

Fall back to the CPU-only version on machines without a supported GPU.

What is it built with?

C++CUDAPythonNode.js

How does it compare?

psychip/vecdaviddrysdale/pkcs11testdeftruth/mnn
Stars0
LanguageC++C++C++
Last pushed2023-01-182023-04-29
MaintenanceDormantDormant
Setup difficultymoderatemoderatemoderate
Complexity4/54/54/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires an NVIDIA RTX 2000 series or newer GPU, AMD/Intel unsupported.

The README does not state a license.

In plain English

VEC is a vector database, a database designed for storing and searching AI-generated numerical representations called embeddings, that runs entirely on your GPU's video memory (VRAM). By keeping all data in VRAM rather than on disk, it achieves very fast similarity searches: finding the nearest matching vectors in a set of one million takes around 14 milliseconds on an RTX 3060. You launch it with a single executable, give it a name and a dimension count, and it starts listening on a network port. No separate database server, no configuration files. A CPU-only version called vec-cpu is also included for systems without a compatible GPU. Supported GPUs are NVIDIA RTX 2000 series and newer, AMD and Intel GPUs are not supported. Each stored record holds a vector, an optional label, and an optional data payload of up to 100 kilobytes. The database supports 16 commands including storing vectors, nearest-neighbor search by either L2 (Euclidean distance) or cosine similarity, exact-match lookup, clustering via a DBSCAN algorithm, and farthest-point sampling. All communication uses a binary protocol over TCP, named pipe, or Unix socket, there is no text interface. Client libraries are provided for C++, Python, Node.js, and Delphi. Every query is a brute-force scan of all stored vectors, which guarantees exact results with no approximation. Duplicate vectors are rejected at write time using a hash comparison. Data lives entirely in memory, disk is only used on startup and when you explicitly save. The fp16 storage option halves VRAM usage at the cost of some precision, effectively doubling capacity.

Copy-paste prompts

Prompt 1
Explain how VEC keeps all vector data in GPU VRAM for fast search.
Prompt 2
Help me start a VEC instance and connect to it using the Python client.
Prompt 3
Show me how to enable fp16 storage to save VRAM at the cost of precision.
Prompt 4
Walk me through the difference between L2 and cosine similarity search here.

Frequently asked questions

What is vec?

VEC is a vector database that runs entirely in GPU memory for very fast similarity search on embeddings.

What language is vec written in?

Mainly C++. The stack also includes C++, CUDA, Python.

What license does vec use?

The README does not state a license.

How hard is vec to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is vec for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.