Developer Guide# Guide for extending, embedding, and contributing to the Vortex ecosystem. Extending Vortex Embedding Vortex Benchmarking Microbenchmarks SQL Benchmarks Orchestrator CI Benchmarks Internals Crate Architecture The vortex Crate Vortex Core Encodings Language Bindings Integrations Other Crates Session and Registries Design Component Registries Registering Plugins Explicit Passing Constructing a Session Runtime and Threading Model Runtime Abstraction Tokio CurrentThreadRuntime Experimentation Vtables and Dispatch The Pattern Example: ExtDType Why Not dyn Trait Registration and Deserialization Execution Why Defer The Executable Trait Incremental Execution Constant Short-Circuiting ScalarFnArray Future Work I/O Subsystem VortexReadAt Read Coalescing Prefetching Memory Backpressure Segment Cache Backend Adaptation Serialization Array Serialization IPC Format Segment Storage File Footer FlatBuffers Zero-Copy Design CUDA Support CudaSession Execution Context Device Buffers Kernel Architecture Stream Pool Supported Encodings External Libraries Build Requirements Integration with Deferred Execution Interoperability Integrations DataFusion Registration Multiple Files Threading Model Filter and Projection Pushdown Data Export Future Work DuckDB Registration Multiple Files Threading Model Filter and Projection Pushdown Data Export Future Work Spark Registration Multiple Files Threading Model Filter and Projection Pushdown Data Export Future Work