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
impl AlgeonNativeExecutionConfig
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
impl AlgeonNativeExecutionConfig
Sourcepub const AUTO_SIZED_DEVICE_BUDGET_HEADROOM_BYTES: u64
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.
Sourcepub fn new(source_chunking: SourceChunking) -> Self
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.
Sourcepub fn with_source_scheduler_policy(
self,
source_scheduler_policy: SourceSchedulerPolicy,
) -> Self
pub fn with_source_scheduler_policy( self, source_scheduler_policy: SourceSchedulerPolicy, ) -> Self
Set bounded source scheduling controls.
Sourcepub fn with_source_chunk_planning_mode(
self,
mode: SourceChunkPlanningMode,
) -> Self
pub fn with_source_chunk_planning_mode( self, mode: SourceChunkPlanningMode, ) -> Self
Set bounded source chunk planning mode.
Sourcepub fn with_lakehouse_cache_fill_config(
self,
config: LakehouseCacheFillConfig,
) -> Self
pub fn with_lakehouse_cache_fill_config( self, config: LakehouseCacheFillConfig, ) -> Self
Set the lakehouse cache-fill resource policy projected into backend execution.
Sourcepub fn with_host_output_memory_pool_accounting(self, enabled: bool) -> Self
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.
Sourcepub fn with_query_id(self, query_id: impl Into<QueryId>) -> Self
pub fn with_query_id(self, query_id: impl Into<QueryId>) -> Self
Attach a diagnostic query id to native execution metrics.
Sourcepub fn with_trace_id(self, trace_id: impl Into<TraceId>) -> Self
pub fn with_trace_id(self, trace_id: impl Into<TraceId>) -> Self
Attach a parent trace id to native diagnostics.
Sourcepub fn query_id(&self) -> Option<&QueryId>
pub fn query_id(&self) -> Option<&QueryId>
Borrows the optional diagnostic query correlation id carried by this execution template.
Sourcepub fn trace_id(&self) -> Option<&TraceId>
pub fn trace_id(&self) -> Option<&TraceId>
Borrows the optional parent trace correlation id carried by this execution template.
Sourcepub fn runtime_observation_config(&self) -> RuntimeObservationConfig
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.
Sourcepub fn with_statistical_aggregate_execution_mode(
self,
mode: StatisticalAggregateExecutionMode,
) -> Self
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.
Sourcepub fn with_dynamic_filter_execution_options(
self,
options: DynamicFilterExecutionOptions,
) -> Self
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.
Sourcepub fn with_keyed_hash_join_strategy_options(
self,
options: KeyedHashJoinStrategyOptions,
) -> Self
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.
Sourcepub fn with_aggregate_strategy_execution_options(
self,
options: AggregateStrategyExecutionOptions,
) -> Self
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.
Sourcepub fn with_source_chunk_planning_options(
self,
options: SourceChunkPlanningOptions,
) -> Self
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.
Sourcepub fn s3_storage(&self) -> Option<&S3SourceStorageProfile>
pub fn s3_storage(&self) -> Option<&S3SourceStorageProfile>
The S3 storage every s3:// source reads through, when configured.
Sourcepub fn with_s3_storage(self, profile: S3SourceStorageProfile) -> Self
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.
Sourcepub fn with_lakehouse_byte_cache(self, cache: LakehouseByteCache) -> Self
pub fn with_lakehouse_byte_cache(self, cache: LakehouseByteCache) -> Self
Keeps a local byte cache of s3:// Parquet objects.
Sourcepub fn source_chunking(&self) -> SourceChunking
pub fn source_chunking(&self) -> SourceChunking
Source chunking of native reads.
Sourcepub fn max_source_reads_in_flight(&self) -> usize
pub fn max_source_reads_in_flight(&self) -> usize
Maximum active native source reads allowed per bounded query.
Sourcepub fn source_scheduler_policy(&self) -> SourceSchedulerPolicy
pub fn source_scheduler_policy(&self) -> SourceSchedulerPolicy
Source scheduling policy used by bounded native source reads.
Sourcepub fn source_chunk_planning_mode(&self) -> SourceChunkPlanningMode
pub fn source_chunk_planning_mode(&self) -> SourceChunkPlanningMode
Source chunk planning mode used by bounded native source reads.
Sourcepub fn lakehouse_cache_fill_config(&self) -> &LakehouseCacheFillConfig
pub fn lakehouse_cache_fill_config(&self) -> &LakehouseCacheFillConfig
Lakehouse cache-fill resource policy projected into backend execution.
Sourcepub fn host_output_memory_pool_accounting(&self) -> bool
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.
Sourcepub fn statistical_aggregate_execution_mode(
&self,
) -> StatisticalAggregateExecutionMode
pub fn statistical_aggregate_execution_mode( &self, ) -> StatisticalAggregateExecutionMode
Execution contract for floating statistical aggregates.
Sourcepub fn planning_policy(&self) -> PlanningPolicy
pub fn planning_policy(&self) -> PlanningPolicy
Join and dynamic-filter thresholds native plans are optimized, admitted, and executed under.
Sourcepub fn aggregate_strategy_execution_options(
&self,
) -> AggregateStrategyExecutionOptions
pub fn aggregate_strategy_execution_options( &self, ) -> AggregateStrategyExecutionOptions
Grouped aggregate strategy execution policy copied into native contexts.
Sourcepub fn source_chunk_planning_options(&self) -> SourceChunkPlanningOptions
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
impl Clone for AlgeonNativeExecutionConfig
Source§impl Debug for AlgeonNativeExecutionConfig
impl Debug for AlgeonNativeExecutionConfig
Auto Trait Implementations§
impl !RefUnwindSafe for AlgeonNativeExecutionConfig
impl !UnwindSafe for AlgeonNativeExecutionConfig
impl Freeze for AlgeonNativeExecutionConfig
impl Send for AlgeonNativeExecutionConfig
impl Sync for AlgeonNativeExecutionConfig
impl Unpin for AlgeonNativeExecutionConfig
impl UnsafeUnpin for AlgeonNativeExecutionConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request