Skip to main content

xlog_cuda/
lib.rs

1//! GPU kernel provider for XLOG
2
3pub mod arrow_device;
4pub mod cuda_compat;
5pub mod cuda_graph;
6pub mod device;
7pub mod device_pool;
8pub mod device_runtime;
9pub mod dlpack;
10pub mod joint_constraint;
11pub mod joint_solver;
12pub mod kernel_manifest_data;
13pub mod launch;
14pub mod memory;
15pub mod multi_gpu_memory;
16pub mod provider;
17pub mod type_seam;
18pub mod wcoj_metadata;
19#[cfg(feature = "wcoj-phase-timing")]
20pub mod wcoj_phase_timing;
21
22pub(crate) mod embedded_kernel_data {
23    include!(concat!(env!("OUT_DIR"), "/embedded_kernel_data.rs"));
24}
25
26pub use arrow_device::{ArrowDeviceArray, ArrowDeviceArrayOwned, ARROW_DEVICE_CUDA};
27pub use cuda_compat::{
28    sys, AsKernelParam, CudaFunction, CudaSlice, CudaStream, CudaView, CudaViewMut, DevicePtr,
29    DevicePtrMut, DeviceRepr, DeviceSlice, DriverError, IntoKernelParamStorage, KernelParamStorage,
30    KernelScalar, LaunchAsync, LaunchConfig, ValidAsZeroBits,
31};
32pub use device::CudaDevice;
33pub use device_pool::GpuDevicePool;
34pub use dlpack::{DLManagedTensor, DlpackManagedTensor, DlpackTable};
35pub use joint_constraint::{CarrierBufferId, CarrierError, CarrierExport, JointConstraintCarrier};
36pub use joint_solver::{
37    candidate_components, Component, ConstraintGraph, Feasibility, FuelMeter, SolveStrategy,
38    SolverError, SOLVER_ABI_IDENTITY,
39};
40pub use memory::{CudaBuffer, CudaColumn, GpuMemoryManager, RuntimeAllocBlock};
41pub use multi_gpu_memory::MultiGpuMemoryManager;
42pub use provider::{
43    circuit_kernels, dedup_kernels, filter_kernels, groupby_kernels, ilp_kernels, join_kernels,
44    pack_kernels, pir_kernels, scan_kernels, set_ops_kernels, sort_kernels, CompareOp,
45    CudaKernelProvider, FjDeltaCols, FjNode, FjPlan, FjSubAtom, JoinIndexV2, JoinType,
46    CIRCUIT_MODULE, DEDUP_MODULE, FILTER_MODULE, GROUPBY_MODULE, ILP_MODULE, JOIN_MODULE,
47    PACK_MODULE, PIR_MODULE, SCAN_MODULE, SET_OPS_MODULE, SORT_MODULE,
48};
49pub use wcoj_metadata::{
50    HeatDist, LayoutSignature, RootMetadata, VertexId, WcojCycle4HgWorkPlanU32,
51    WcojCycle4HgWorkPlanU64, WcojRelationMetadata, WcojTriangleHgWorkPlanU32,
52    WcojTriangleHgWorkPlanU64,
53};