Python API

The vulkan_columnar Python package wraps the C ABI shared library with Pythonic classes via ctypes. No C++ compiler is required at runtime — only the prebuilt shared library and a Vulkan driver.

Installation

pip install vulkan-columnar

Quick Start

from vulkan_columnar import VcContext, U32, F64

with VcContext() as ctx:
    col = ctx.create_column(U32, [10, 20, 30, 40, 50])

    # Filter
    mask = col > 25
    filtered = col.filter(mask)  # [30, 40, 50]

    # Cast
    f64_col = col.cast(F64)      # [10.0, 20.0, ...]

    # Sort
    unsorted = ctx.create_column(U32, [5, 3, 1, 4, 2])
    sorted_col = unsorted.sort()  # [1, 2, 3, 4, 5]

    # Arithmetic
    added = col + 10             # [20, 30, 40, 50, 60]
    doubled = col * 2            # [20, 40, 60, 80, 100]

    # Read back
    result = filtered.read()     # numpy array [30 40 50]

VcContext

VcColumn

Dtype Constants