Squashed 'vendor/ruvector/' content from commit b64c2172

git-subtree-dir: vendor/ruvector
git-subtree-split: b64c21726f2bb37286d9ee36a7869fef60cc6900
This commit is contained in:
ruv
2026-02-28 14:39:40 -05:00
commit d803bfe2b1
7854 changed files with 3522914 additions and 0 deletions

View File

@@ -0,0 +1,114 @@
use criterion::{black_box, criterion_group, criterion_main, BenchmarkId, Criterion};
use meta_sim_consciousness::*;
fn bench_closed_form_phi(c: &mut Criterion) {
let mut group = c.benchmark_group("closed_form_phi");
for n in [4, 6, 8, 10, 12].iter() {
group.bench_with_input(BenchmarkId::from_parameter(n), n, |b, &n| {
// Create cycle network
let mut adj = vec![vec![0.0; n]; n];
for i in 0..n {
adj[i][(i + 1) % n] = 1.0;
}
let nodes: Vec<u64> = (0..n as u64).collect();
let calculator = ClosedFormPhi::default();
b.iter(|| black_box(calculator.compute_phi_ergodic(&adj, &nodes)));
});
}
group.finish();
}
fn bench_cei_computation(c: &mut Criterion) {
let mut group = c.benchmark_group("cei_computation");
for n in [4, 6, 8, 10].iter() {
group.bench_with_input(BenchmarkId::from_parameter(n), n, |b, &n| {
let mut adj = vec![vec![0.0; n]; n];
for i in 0..n {
adj[i][(i + 1) % n] = 1.0;
}
let calculator = ClosedFormPhi::default();
b.iter(|| black_box(calculator.compute_cei(&adj, 1.0)));
});
}
group.finish();
}
fn bench_ergodicity_test(c: &mut Criterion) {
let mut group = c.benchmark_group("ergodicity_test");
for n in [4, 6, 8].iter() {
group.bench_with_input(BenchmarkId::from_parameter(n), n, |b, &n| {
let mut transition = vec![vec![0.0; n]; n];
for i in 0..n {
transition[i][(i + 1) % n] = 1.0;
}
let analyzer = ErgodicityAnalyzer::default();
let observable = |state: &[f64]| state[0];
b.iter(|| black_box(analyzer.test_ergodicity(&transition, observable)));
});
}
group.finish();
}
fn bench_hierarchical_phi(c: &mut Criterion) {
let mut group = c.benchmark_group("hierarchical_phi");
group.bench_function("batch_64_depth_3", |b| {
let param_space = ConsciousnessParameterSpace::new(4);
let networks: Vec<_> = param_space
.generate_networks()
.into_iter()
.take(64)
.collect();
b.iter(|| {
let mut batcher = HierarchicalPhiBatcher::new(64, 3, 4);
black_box(batcher.process_hierarchical_batch(&networks))
});
});
group.finish();
}
fn bench_meta_simulation(c: &mut Criterion) {
let mut group = c.benchmark_group("meta_simulation");
group.bench_function("small_config", |b| {
let config = MetaSimConfig {
network_size: 4,
hierarchy_depth: 2,
batch_size: 8,
num_cores: 1,
simd_width: 1,
bit_width: 1,
};
b.iter(|| {
let mut simulator = MetaConsciousnessSimulator::new(config.clone());
black_box(simulator.run_meta_simulation())
});
});
group.finish();
}
criterion_group!(
benches,
bench_closed_form_phi,
bench_cei_computation,
bench_ergodicity_test,
bench_hierarchical_phi,
bench_meta_simulation
);
criterion_main!(benches);