summaryrefslogtreecommitdiff
path: root/ecs/benches/query.rs
diff options
context:
space:
mode:
Diffstat (limited to 'ecs/benches/query.rs')
-rw-r--r--ecs/benches/query.rs141
1 files changed, 0 insertions, 141 deletions
diff --git a/ecs/benches/query.rs b/ecs/benches/query.rs
deleted file mode 100644
index f14bb06..0000000
--- a/ecs/benches/query.rs
+++ /dev/null
@@ -1,141 +0,0 @@
-use std::hint::black_box;
-use std::path::PathBuf;
-
-use criterion::{criterion_group, criterion_main, Criterion};
-use ecs::{Component, World};
-
-#[derive(Component)]
-struct Foo
-{
- _text: String,
-}
-
-#[derive(Component)]
-struct Bar
-{
- _path: PathBuf,
- _num: u64,
-}
-
-#[derive(Component)]
-struct Position
-{
- _x: f32,
- _y: f32,
- _z: f32,
-}
-
-#[derive(Component)]
-struct PosA
-{
- _x: f32,
- _y: f32,
- _z: f32,
-}
-
-#[derive(Component)]
-struct PosB
-{
- _x: f32,
- _y: f32,
- _z: f32,
-}
-
-#[derive(Component)]
-struct PosC
-{
- _x: f32,
- _y: f32,
- _z: f32,
-}
-
-#[derive(Component)]
-struct MoreText
-{
- _more_text: String,
-}
-
-#[derive(Component)]
-struct EvenMoreText
-{
- _even_more_text: String,
-}
-
-fn spawn_1000_entities(world: &mut World)
-{
- for _ in 0..300 {
- world.create_entity((
- Bar {
- _path: "/dev/zero".into(),
- _num: 65789,
- },
- Position { _x: 13.98, _y: 27.0, _z: 0.2 },
- Foo { _text: "Hello there".to_string() },
- PosA {
- _x: 1183.98,
- _y: 272628.0,
- _z: 3306.2,
- },
- PosB {
- _x: 171183.98,
- _y: 28.0,
- _z: 336.2901,
- },
- PosC { _x: 8273.98, _y: 28.0, _z: 336.2901 },
- MoreText {
- _more_text: "Lorem ipsum".to_string(),
- },
- EvenMoreText {
- _even_more_text: "Wow so much text".to_string(),
- },
- ));
- }
-
- for _ in 0..700 {
- world.create_entity((
- Bar {
- _path: "/dev/null".into(),
- _num: 65789,
- },
- Position { _x: 88.11, _y: 9.0, _z: 36.11 },
- Foo { _text: "Hey".to_string() },
- PosA {
- _x: 118310.98,
- _y: 272628.0,
- _z: 3306.2,
- },
- PosB { _x: 11323.98, _y: 28.0, _z: 336.2901 },
- PosC {
- _x: 8273.98,
- _y: 21818.0,
- _z: 336.2901,
- },
- MoreText {
- _more_text: "Lorem ipsum".to_string(),
- },
- EvenMoreText {
- _even_more_text: "Wow much text".to_string(),
- },
- ));
- }
-}
-
-fn benchbark(criterion: &mut Criterion)
-{
- criterion.bench_function("Iterate 1000 entities", |bencher| {
- let mut world = World::new();
-
- spawn_1000_entities(&mut world);
-
- let query = world.query::<(&Bar, &Position, &Foo), ()>();
-
- bencher.iter(|| {
- for comps in query.iter() {
- black_box(comps);
- }
- })
- });
-}
-
-criterion_group!(benches, benchbark);
-criterion_main!(benches);