Skip to main content

order

Function order 

Source
pub fn order<M: Metric>(
    pattern: &CscPattern<'_>,
    opts: &WorkspaceOptions,
    aggressive: bool,
) -> Result<(Vec<i32>, OrderDiagnostics), OrderingError>
Expand description

Run a metric-driven AMD-family ordering on a full-symmetric pattern, returning the permutation plus diagnostic counters.

Equivalent to:

let mut ws = Workspace::new(pattern, opts)?;
let flops = M::run_elimination(&mut ws, aggressive)?;
let perm = finalize_permutation(&mut ws);

M selects the metric (and, transitively, the elimination loop). AMD uses MinDegree; the planned AMF crate will pass MinFill.