MCPcopy Create free account
hub / github.com/argumentcomputer/ix / checked_suffix

Method checked_suffix

crates/ffi/src/kernel.rs:2256–2277  ·  view source on GitHub ↗
(&self, slow_threshold: Duration)

Source from the content-addressed store, hash-verified

2254/// the serialized constants alone, no kernel run.
2255///
2256/// - Vertices: ingress units (a Muts block or a standalone constant),
2257/// `serialized_size` real, `const_count` = member constants,
2258/// `heartbeats` := size (report-only).
2259/// - Balance weight: the partitioner's vertex weight is `block_step_cost`
2260/// (a linear model over the op counters), so the byte weight is carried
2261/// in `subst` — `vweight ∝ size` exactly, matching the measured-best
2262/// bisection weight (`ix_kernel::shard::STATIC_OWNED_PER_BYTE` docs).
2263/// - Edges: the claim-walk relation (`ixon::shard_claim::walk_edges` —
2264/// positively-used refs + projection block pointers) at block
2265/// granularity, deduped, self-edges dropped. These are exactly the
2266/// edges that generate a shard's thin frontier, i.e. its ingress.
2267#[allow(clippy::cast_possible_truncation)] // block sizes clamped to u32::MAX
2268fn static_block_profile(env: &IxonEnv) -> BlockProfile {
2269 use rayon::prelude::*;
2270 let addrs: Vec<Address> =
2271 env.consts.iter().map(|e| e.key().clone()).collect();
2272 // Phase 1 (parallel): parse each constant exactly ONCE. Lazy mmap
2273 // entries re-parse on every `get()` (see `LazyConstant`'s cache
2274 // policy), so the home block is derived from the constant we already
2275 // hold instead of `profile_block_of` (which would parse again), and
2276 // edge targets are kept as raw addresses to be resolved in phase 2
2277 // through the addr→home table this pass produces.
2278 struct ConstRow {
2279 addr: Address,
2280 home: Address,

Callers 1

check_consts_loopFunction · 0.80

Calls 2

is_slowMethod · 0.80
is_expectedMethod · 0.80

Tested by

no test coverage detected