app: buffer_proto5: increase fps by setting steps_per_stim

the bottleneck seems mostly to be transferring data CPU <-> GPU.
boosting to 200 steps per stim gets us like 50 fps, but causes serious
CPU-side lag.
This commit is contained in:
colin 2022-09-01 17:41:13 -07:00
parent 482f07520c
commit 19ff08ada8
1 changed files with 3 additions and 2 deletions

View File

@ -415,7 +415,7 @@ fn run_sim(id: u32, p: Params, g: Geometries) -> Results {
let mut driver = Driver::new(SpirvSim::<f32, Mat, WgpuBackend>::new(
g.dim.to_index(p.geom.feat_size), p.geom.feat_size
));
if !driver.add_state_file(&*format!("{}/state.bc", prefix), 16000) {
if !driver.add_state_file(&*format!("{}/state.bc", prefix), 4000) {
// mu_r=881.33, starting at H=25 to H=75.
let ferro_mat = mat::Ferroxcube3R1MH::new();
// let ferro_mat = mat::db::conductor(wire_conductivity);
@ -528,8 +528,9 @@ fn run_sim(id: u32, p: Params, g: Geometries) -> Results {
driver.add_csv_renderer(&*meas_csv, 400, None);
driver.add_csv_renderer(&*meas_sparse_csv, 8000, None);
driver.set_steps_per_stimulus(20);
driver.step_until(duration);
let (m1_peak, m1_stable) = significa(CsvRenderer::new(&*meas_sparse_csv).read_column_as_f32("M(mem1)"));
let (m2_peak, m2_stable) = significa(CsvRenderer::new(&*meas_sparse_csv).read_column_as_f32("M(mem2)"));
let (h1_peak, h1_stable) = significa(CsvRenderer::new(&*meas_sparse_csv).read_column_as_f32("H(mem1)"));