From 02dcac5d8221adda9c9244e094a0b7f52b9ab0ce Mon Sep 17 00:00:00 2001 From: Cameron Hart Date: Thu, 20 Jun 2019 22:37:29 +1000 Subject: [PATCH] Added Vec4 benches. --- benches/support/mod.rs | 9 ++++++++- benches/vec4.rs | 25 +++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 benches/vec4.rs diff --git a/benches/support/mod.rs b/benches/support/mod.rs index 47e253a0..cd20e257 100644 --- a/benches/support/mod.rs +++ b/benches/support/mod.rs @@ -1,5 +1,5 @@ #![allow(dead_code)] -use glam::f32::{Mat2, Mat3, Mat4, Quat, Vec2, Vec3}; +use glam::f32::{Mat2, Mat3, Mat4, Quat, Vec2, Vec3, Vec4}; use rand::Rng; // pub fn random_type(rng: &mut R) -> T where R: Rng, distributions::Standard: distributions::Distribution { @@ -20,6 +20,13 @@ where rng.gen() } +pub fn random_vec4(rng: &mut R) -> Vec4 +where + R: Rng, +{ + rng.gen() +} + pub fn random_nonzero_vec3(rng: &mut R) -> Vec3 where R: Rng, diff --git a/benches/vec4.rs b/benches/vec4.rs new file mode 100644 index 00000000..1c9734f5 --- /dev/null +++ b/benches/vec4.rs @@ -0,0 +1,25 @@ +#[path = "support/macros.rs"] +#[macro_use] +mod macros; +mod support; + +use criterion::{criterion_group, criterion_main, Criterion}; +use glam::f32::{Mat4, Vec4}; +use rand::SeedableRng; +use rand_xoshiro::Xoshiro256Plus; +use std::ops::Mul; +use support::{random_srt_mat4, random_vec4}; + +bench_binop!( + vec4_mul_mat4, + "vec4 * mat4", + op => mul, + ty1 => Mat4, + from1 => random_srt_mat4, + ty2 => Vec4, + from2 => random_vec4 +); + +criterion_group!(benches, vec4_mul_mat4,); + +criterion_main!(benches);