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]