Skip to main content

AlgeonNativeExecutionConfig

Struct AlgeonNativeExecutionConfig 

Source
pub struct AlgeonNativeExecutionConfig { /* private fields */ }
Expand description

Adapter-side native execution configuration.

This type holds the DataFusion-facing settings for native cuDF execution. It does not eagerly create cuDF runtime state. Production ExecutionContext values are acquired only through backend admission when an accepted native plan begins execution.

Implementations§

Source§

impl AlgeonNativeExecutionConfig

Source

pub fn has_query_admission_authority(&self) -> bool

Returns whether this config carries a backend admission source or an attempt-bound ticket.

This presence check does not claim capacity or establish that the backend is open.

Source§

impl AlgeonNativeExecutionConfig

Source

pub const AUTO_SIZED_DEVICE_BUDGET_HEADROOM_BYTES: u64

Device-memory headroom, in bytes, reserved by automatic per-device backend profiles for libcudf and driver overhead.

Source

pub fn new(source_chunking: SourceChunking) -> Self

A configuration with source_chunking and default settings otherwise. It carries no device capacity: admitted execution always runs under the selected device’s immutable grant.

Source

pub fn with_source_scheduler_policy( self, source_scheduler_policy: SourceSchedulerPolicy, ) -> Self

Set bounded source scheduling controls.

Source

pub fn with_source_chunk_planning_mode( self, mode: SourceChunkPlanningMode, ) -> Self

Set bounded source chunk planning mode.

Source

pub fn with_lakehouse_cache_fill_config( self, config: LakehouseCacheFillConfig, ) -> Self

Set the lakehouse cache-fill resource policy projected into backend execution.

Source

pub fn with_host_output_memory_pool_accounting(self, enabled: bool) -> Self

Account native host Arrow output batches against DataFusion’s host MemoryPool.

This is intentionally host-only. Device memory admission and grants stay in the native query service/governor ledger.

Source

pub fn with_query_id(self, query_id: impl Into<QueryId>) -> Self

Attach a diagnostic query id to native execution metrics.

Source

pub fn with_trace_id(self, trace_id: impl Into<TraceId>) -> Self

Attach a parent trace id to native diagnostics.

Source

pub fn query_id(&self) -> Option<&QueryId>

Borrows the optional diagnostic query correlation id carried by this execution template.

Source

pub fn trace_id(&self) -> Option<&TraceId>

Borrows the optional parent trace correlation id carried by this execution template.

Source

pub fn runtime_observation_config(&self) -> RuntimeObservationConfig

Returns the bounded runtime observation retention policy copied into native execution.

Prunes s3:// Parquet row groups from their footers before native execution admits the plan. Off by default.

Whether footer pruning runs before admission.

Source

pub fn with_statistical_aggregate_execution_mode( self, mode: StatisticalAggregateExecutionMode, ) -> Self

Select the execution contract for floating statistical aggregates.

Defaults to StatisticalAggregateExecutionMode::GpuNativeTolerant, whose results can differ from DataFusion in floating-point bits. Select StatisticalAggregateExecutionMode::DataFusionExactHostWelford when results must be identical to DataFusion’s. In that mode a candidate whose statistical aggregate input DataFusion reads through more than one partition stays on DataFusion, whose own result then depends on the order partitions deliver rows.

Source

pub fn with_dynamic_filter_execution_options( self, options: DynamicFilterExecutionOptions, ) -> Self

Set native dynamic-filter execution policy.

Route discovery, admission, and runtime payload handling read one threshold set through Self::planning_policy. It is intentionally not exposed as a session/server setting until the expert surface is reviewed.

Source

pub fn with_keyed_hash_join_strategy_options( self, options: KeyedHashJoinStrategyOptions, ) -> Self

Set native keyed-hash join strategy policy.

Capability admission, admission reports, and runtime observed-build strategy selection read one threshold set through Self::planning_policy. It is intentionally not exposed as a session/server setting until the expert surface is reviewed.

Source

pub fn with_aggregate_strategy_execution_options( self, options: AggregateStrategyExecutionOptions, ) -> Self

Set native grouped aggregate strategy execution policy.

This policy is copied into native execution contexts so runtime aggregate strategy selection, exact-cardinality probes, and strategy metric rows share one threshold set. It is intentionally not exposed as a session/server setting until the expert surface is reviewed.

Source

pub fn with_source_chunk_planning_options( self, options: SourceChunkPlanningOptions, ) -> Self

Set expert local-throughput source chunk planning policy.

This policy is intentionally Rust-only; public source chunk settings remain the bounded memory policy and source chunk planning mode.

Source

pub fn s3_storage(&self) -> Option<&S3SourceStorageProfile>

The S3 storage every s3:// source reads through, when configured.

Source

pub fn with_s3_storage(self, profile: S3SourceStorageProfile) -> Self

Reads every s3:// source through profile: native reads, cache fills, footer pruning, and the DataFusion object store that sessions installed with this config resolve for s3:// URLs.

Source

pub fn with_lakehouse_byte_cache(self, cache: LakehouseByteCache) -> Self

Keeps a local byte cache of s3:// Parquet objects.

Source

pub fn source_chunking(&self) -> SourceChunking

Source chunking of native reads.

Source

pub fn max_source_reads_in_flight(&self) -> usize

Maximum active native source reads allowed per bounded query.

Source

pub fn source_scheduler_policy(&self) -> SourceSchedulerPolicy

Source scheduling policy used by bounded native source reads.

Source

pub fn source_chunk_planning_mode(&self) -> SourceChunkPlanningMode

Source chunk planning mode used by bounded native source reads.

Source

pub fn lakehouse_cache_fill_config(&self) -> &LakehouseCacheFillConfig

Lakehouse cache-fill resource policy projected into backend execution.

Source

pub fn host_output_memory_pool_accounting(&self) -> bool

Whether host Arrow output from native execution is charged to DataFusion’s host-side memory pool.

Source

pub fn statistical_aggregate_execution_mode( &self, ) -> StatisticalAggregateExecutionMode

Execution contract for floating statistical aggregates.

Source

pub fn planning_policy(&self) -> PlanningPolicy

Join and dynamic-filter thresholds native plans are optimized, admitted, and executed under.

Source

pub fn aggregate_strategy_execution_options( &self, ) -> AggregateStrategyExecutionOptions

Grouped aggregate strategy execution policy copied into native contexts.

Source

pub fn source_chunk_planning_options(&self) -> SourceChunkPlanningOptions

Expert local-throughput source chunk planning policy copied into native contexts.

Trait Implementations§

Source§

impl Clone for AlgeonNativeExecutionConfig

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for AlgeonNativeExecutionConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for AlgeonNativeExecutionConfig

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FromRef<T> for T
where T: Clone,

Source§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
Source§

impl<L> LayerExt<L> for L

Source§

fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>
where L: Layer<S>,

Applies the layer to a service and wraps it in Layered.
Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more