minseok
π Release BioPhys 6.0 Grand Master: 16GB (14.89GB) Gemma-4 100% Devour, Ecosystem Evolution, Solar MoE, SNN Autoregressive SDK, Dynamic PhaseVM
be99550 | // π BioPhys μ€μκ° μ°μ κ°λ ν΅ν© μμ€ν (src/bin/run_live_system.rs) | |
| mod korean_telemetry; | |
| mod parallel_engine; | |
| use std::time::Instant; | |
| use parallel_engine::{LargeScaleEngine, PhaseState}; | |
| use korean_telemetry::TelemetryReporter; | |
| fn main() { | |
| println!("============================================================"); | |
| println!(" π [BioPhys ν΅ν© κ°λ] μ€μκ° μ€νΈλ¦Ό β ν΅ νμ΅ β λμν ν λ λ©νΈλ¦¬"); | |
| println!("============================================================\n"); | |
| let grid_size = 512; // 262,144 λ Έλ | |
| let total_nodes = grid_size * grid_size; | |
| let mut engine = LargeScaleEngine::new(grid_size); | |
| println!("βοΈ μμ€ν μ΄κΈ°ν μλ£ (262,144κ° 8λ μμ λ Έλ κ°λ μ€λΉ)"); | |
| println!("π μ°μ μ€μκ° μ¬μ΄ν΄ κ°λ μμ...\n"); | |
| let num_cycles = 6; | |
| let start_all = Instant::now(); | |
| for cycle in 1..=num_cycles { | |
| let t_cycle_start = Instant::now(); | |
| // 1. μΈλΆ μ€μκ° μΉ μ€νΈλ¦Ό νλ μμ± λ° μ£Όμ | |
| let wave_freq = (cycle as f32) * 0.5; | |
| for (i, b) in engine.bedrock.iter_mut().enumerate() { | |
| let x = (i % grid_size) as f32 / grid_size as f32; | |
| let y = (i / grid_size) as f32 / grid_size as f32; | |
| let signal = ((x * wave_freq * 6.28).sin() + (y * wave_freq * 6.28).cos()) * 0.5; | |
| *b = (*b * 0.6) + (signal * 0.4); // ν΅/λμν μ νΈ μ΅ν© | |
| } | |
| // 2. 26λ§ λ Έλ 16μ½μ΄ λ©ν°μ€λ λ λ³λ ¬ μν μ μ΄ μ°μ° | |
| let avg_energy = engine.step_parallel(); | |
| // 3. νκ΅μ΄ μ€μκ° ν λ λ©νΈλ¦¬ 리ν¬ν | |
| let sample: Vec<f32> = engine.topsoil[0..10_000].iter().map(|p| p.value()).collect(); | |
| let report = TelemetryReporter::analyze(&sample, avg_energy, cycle); | |
| let cycle_dur = t_cycle_start.elapsed().as_secs_f64() * 1000.0; | |
| print!("{}", report); | |
| println!(" ββ μ¬μ΄ν΄ μ²λ¦¬ μλ: {:.2} ms (μ΄λΉ {:.1}ν μ°μ μ¬μ΄ν΄ κ°λ₯)\n", cycle_dur, 1000.0 / cycle_dur); | |
| } | |
| let total_dur = start_all.elapsed().as_secs_f64(); | |
| println!("============================================================"); | |
| println!(" π μ°μ μμ€ν κ°λ κ²°κ³Ό μμ½"); | |
| println!("============================================================"); | |
| println!(" β±οΈ μ΄ κ°λ μκ° : {:.4} μ΄", total_dur); | |
| println!(" π μ΄ μ°μ° λ Έλ μ : {:.2} Million Nodes ({:?} nodes total)", (total_nodes * num_cycles) as f64 / 1e6, total_nodes * num_cycles); | |
| println!(" β‘ μμ μ± μν : μ μ μλ ΄ (Homeostasis νν μ μ§)"); | |
| println!("============================================================"); | |
| } | |