Expand description
RunMat Accelerate: GPU Acceleration Abstraction Layer
Goals:
- Provide a backend-agnostic API surface that maps RunMat operations to GPU kernels.
- Support multiple backends via features (CUDA, ROCm, Metal, Vulkan, OpenCL, wgpu).
- Allow zero-copy interop with
runmat-builtins::Matrixwhere possible. - Defer actual kernel authoring to backend crates/modules; this crate defines traits and wiring.
Re-exports§
pub use native_auto::apply_auto_offload_calibration_from_file;pub use native_auto::auto_offload_report;pub use native_auto::is_sink;pub use native_auto::prepare_builtin_args;pub use native_auto::promote_binary;pub use native_auto::promote_reduction_args;pub use native_auto::promote_unary;pub use native_auto::reset_auto_offload_log;pub use native_auto::AutoOffloadCalibrationOutcome;pub use native_auto::AutoOffloadCalibrationSummary;pub use native_auto::AutoOffloadDecisionEntry;pub use native_auto::AutoOffloadDisposition;pub use native_auto::AutoOffloadReport;pub use native_auto::BinaryOp;pub use native_auto::CachedProviderInfo;pub use native_auto::DecisionReason;pub use native_auto::ReductionOp;pub use native_auto::ThresholdBase;pub use native_auto::ThresholdDelta;pub use native_auto::ThresholdDeltaEntry;pub use native_auto::ThresholdSnapshot;pub use native_auto::UnaryOp;pub use fusion::*;pub use graph::*;
Modules§
Structs§
- Accelerate
Init Options - Initialization options for selecting and configuring the acceleration provider.
- Accelerator
- High-level façade for accelerated operations, falling back to
runmat-runtime. - Auto
Offload Options - Configuration passed to the native auto-offload planner.
- Device
Info - Device descriptor used for selection and capabilities query.
- Planner
- Planner determines whether to execute on CPU or a selected backend. This will eventually consult sizes, heuristics, and device availability.
Enums§
- Accel
Power Preference - Power preference used when initializing a WGPU backend
- Accelerate
Provider Preference - Preferred acceleration provider selection
- Auto
Offload LogLevel - Logging verbosity for auto-offload promotion decisions.
- Device
Kind - High-level device kind. Concrete selection is provided by backend.
- Execution
Target - Reduction
Axes
Traits§
- Accelerate
Backend - Core backend interface that concrete backends must implement.
- Buffer
Handle - Abstract buffer that may reside on device or be host-pinned.
- Device
Matrix - Abstract matrix allocated on a device backend.
Functions§
- configure_
auto_ offload - initialize_
acceleration_ provider - Initialize the acceleration provider using default options.
- initialize_
acceleration_ provider_ with - Initialize the global acceleration provider using the supplied options.
- value_
is_ all_ keyword