oxicuda_sparse/ops/
mod.rs1pub mod auto_spmv;
14pub mod batched;
15pub mod krylov;
16pub mod matrix_powers;
17pub mod mixed_precision_spmv;
18pub mod sddmm;
19pub mod spgemm;
20pub mod spgemm_estimate;
21pub mod spgemm_merge;
22pub mod spmm;
23pub mod spmv;
24pub mod spmv_bsr;
25pub mod spmv_csr5;
26pub mod spmv_ell;
27pub mod sptrsv;
28pub mod tensor;
29
30pub use auto_spmv::{
31 RecommendedFormat, SpMatFormat, analyze_sparsity, auto_spmv, recommend_format, select_format,
32};
33pub use batched::{
34 BatchScheduler, BatchedSpGEMM, BatchedSpMV, BatchedSpMVPlan, BatchedTriSolve, Strategy,
35 UniformBatchedSpMV, batched_spmv_cpu, generate_batched_spmv_ptx, mixed_precision_spmv_cpu,
36};
37pub use krylov::{
38 ArnoldiConfig, ArnoldiPlan, ArnoldiResult, EigenTarget, LanczosConfig, LanczosPlan,
39 LanczosResult,
40};
41pub use matrix_powers::{
42 MatrixPowerConfig, MatrixPowerResult, estimate_power_nnz, sparse_identity,
43 sparse_matrix_polynomial, sparse_matrix_power,
44};
45pub use mixed_precision_spmv::{
46 ComputePrecision, MixedPrecisionConfig, MixedPrecisionPlan, MixedPrecisionStats, MixedSpMVAlgo,
47 StoragePrecision, estimate_precision_loss, generate_mixed_scalar_spmv_ptx,
48 generate_mixed_vector_spmv_ptx, generate_packed_vector_spmv_ptx, plan_mixed_precision_spmv,
49 validate_mixed_precision_config,
50};
51pub use sddmm::sddmm;
52pub use spgemm::{spgemm_numeric, spgemm_symbolic};
53pub use spgemm_estimate::{
54 EstimationMethod, SpGEMMEstimate, auto_estimate_spgemm, count_nnz_exact, estimate_nnz_sampling,
55 estimate_nnz_upper_bound, estimate_spgemm_memory,
56};
57pub use spgemm_merge::spgemm_merge;
58pub use spmm::spmm;
59pub use spmv::{SpMVAlgo, spmv};
60pub use spmv_bsr::spmv_bsr;
61pub use spmv_csr5::csr5_spmv;
62pub use spmv_ell::spmv_ell;
63pub use sptrsv::sptrsv;
64pub use tensor::{
65 EdgeFeatures, GnnSparseConfig, MessagePassingOp, add_self_loops, compute_degree_matrix, gather,
66 scatter_reduce, sparse_attention_message, sparse_message_passing, sparse_row_softmax,
67 symmetric_normalize,
68};