Add timing stuff
This commit is contained in:
parent
89c0a5f3ae
commit
cf6ae348c3
@ -8,6 +8,8 @@ use crate::rule::{Rule, RuleFn, RuleEval, Child};
|
|||||||
use crate::prim;
|
use crate::prim;
|
||||||
use crate::util;
|
use crate::util;
|
||||||
|
|
||||||
|
use std::time::Instant;
|
||||||
|
|
||||||
fn cube_thing() -> Rule {
|
fn cube_thing() -> Rule {
|
||||||
|
|
||||||
// Quarter-turn in radians:
|
// Quarter-turn in radians:
|
||||||
@ -432,6 +434,13 @@ pub fn main() {
|
|||||||
|
|
||||||
fn run_test_iter(r: &Rc<Rule>, iters: usize, name: &str) {
|
fn run_test_iter(r: &Rc<Rule>, iters: usize, name: &str) {
|
||||||
println!("Running {}...", name);
|
println!("Running {}...", name);
|
||||||
|
let start = Instant::now();
|
||||||
|
let n = 100;
|
||||||
|
for i in 0..n {
|
||||||
|
Rule::to_mesh_iter(r.clone(), iters);
|
||||||
|
}
|
||||||
|
let elapsed = start.elapsed();
|
||||||
|
println!("DEBUG: {} ms per run", elapsed.as_millis() / n);
|
||||||
let (mesh, nodes) = Rule::to_mesh_iter(r.clone(), iters);
|
let (mesh, nodes) = Rule::to_mesh_iter(r.clone(), iters);
|
||||||
println!("Evaluated {} rules", nodes);
|
println!("Evaluated {} rules", nodes);
|
||||||
let fname = format!("{}.stl", name);
|
let fname = format!("{}.stl", name);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user