1
0
Fork 0
mirror of https://codeberg.org/icewind/vbsp.git synced 2026-06-03 10:44:07 +02:00

move benches to criterion

This commit is contained in:
Robin Appelman 2025-02-15 16:49:56 +01:00
commit 1ea84fcef8
3 changed files with 477 additions and 22 deletions

View file

@ -1,30 +1,28 @@
#![feature(test)]
use criterion::{criterion_group, criterion_main, Criterion};
use std::hint::black_box;
use vbsp::{Bsp, Vector};
extern crate test;
const MAP_BYTES: &[u8] = include_bytes!("../koth_bagel_rc2a.bsp");
mod benches {
use test::Bencher;
use vbsp::{Bsp, Vector};
fn from_bytes(c: &mut Criterion) {
c.bench_function("parse bsp", |b| {
b.iter(|| Bsp::read(black_box(&MAP_BYTES)).unwrap())
});
}
const MAP_BYTES: &[u8] = include_bytes!("../koth_bagel_rc2a.bsp");
fn leaf_at(c: &mut Criterion) {
let bsp = Bsp::read(&MAP_BYTES).unwrap();
#[bench]
fn from_bytes(b: &mut Bencher) {
c.bench_function("get leaf at position", |b| {
b.iter(|| {
Bsp::read(&MAP_BYTES).unwrap();
});
}
#[bench]
fn leaf_at(b: &mut Bencher) {
let bsp = Bsp::read(&MAP_BYTES).unwrap();
b.iter(|| {
test::black_box(bsp.leaf_at(test::black_box(Vector {
black_box(bsp.leaf_at(black_box(Vector {
x: 0.,
y: 0.,
z: 0.,
})));
})))
});
}
});
}
criterion_group!(benches, leaf_at, from_bytes);
criterion_main!(benches);