sirius-db/sirius

GPU-native composable analytics engine

What it solves

Sirius is a GPU-native SQL engine designed to accelerate data analytics by offloading query execution from the CPU to the GPU. It eliminates the need for users to rewrite their existing SQL queries or change their database systems, providing a significant performance boost for large-scale data processing.

How it works

Sirius plugs into existing databases like DuckDB using the standard Substrait query format. It intercepts queries via an optimizer hook and executes them on the GPU using NVIDIA CUDA-X libraries, including cuDF and the RAPIDS Memory Manager (RMM).

Key technical features include:

  • Transparent Execution: Queries are automatically routed to the GPU; if an operator is unsupported, the system silently falls back to the CPU.
  • Out-of-Core Processing: It manages memory across a tiered system (GPU, host memory, and disk) with automatic data partitioning and spilling to handle datasets larger than GPU memory.
  • Memory Pinning: Users can "pin" frequently used tables into GPU or host memory to skip file I/O and decoding for subsequent runs.
  • Storage Support: It works with both Parquet files and DuckDB-native storage.

Who it’s for

Data engineers and analysts who use DuckDB or other SQL engines and need to process massive datasets (e.g., TPC-H benchmarks) with high-performance GPU acceleration without changing their workflow.

Highlights

  • Seamless Integration: Plugs into DuckDB as an extension with no query rewrites required.
  • High Performance: Demonstrates up to 5x acceleration over DuckDB on specific hardware (DGX Station).
  • Tiered Memory: Efficiently handles large-scale data via GPU/host/disk memory management.
  • GPU-Native: Built on NVIDIA CUDA-X and RAPIDS for maximum hardware utilization.

Related

  • Project
  • Project
  • Project
  • Project
  • Project