#![allow(missing_docs)]
#[macro_export]
macro_rules! testgen_matmul_simple {
() => {
mod simple {
$crate::testgen_matmul_simple!(f32);
}
};
($float:ident) => {
use super::*;
use cubecl_matmul::tests;
use cubecl_core::flex32;
pub type FloatT = $float;
#[test]
pub fn test_small() {
cubecl_matmul::tests::naive::tests::test_small::<TestRuntime, FloatT>(
&Default::default(),
)
}
#[test]
pub fn test_odd() {
cubecl_matmul::tests::naive::tests::test_odd::<TestRuntime, FloatT>(
&Default::default(),
)
}
#[test]
pub fn test_simple_matmul_large() {
cubecl_matmul::tests::naive::tests::test_large::<TestRuntime, FloatT>(
&Default::default(),
)
}
#[test]
pub fn test_with_check_bounds() {
cubecl_matmul::tests::naive::tests::test_with_check_bounds::<
TestRuntime,
FloatT,
>(&Default::default())
}
#[test]
pub fn test_with_batches() {
cubecl_matmul::tests::naive::tests::test_with_batches::<
TestRuntime,
FloatT,
>(&Default::default())
}
};
([$($float:ident),*]) => {
mod simple {
use super::*;
::paste::paste! {
$(mod [<$float _ty>] {
use super::*;
$crate::testgen_matmul_simple!($float);
})*
}
}
};
}