summaryrefslogtreecommitdiff
path: root/candle-core/examples
diff options
context:
space:
mode:
Diffstat (limited to 'candle-core/examples')
-rw-r--r--candle-core/examples/conv1d_benchmark.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/candle-core/examples/conv1d_benchmark.rs b/candle-core/examples/conv1d_benchmark.rs
new file mode 100644
index 00000000..52fae5e8
--- /dev/null
+++ b/candle-core/examples/conv1d_benchmark.rs
@@ -0,0 +1,24 @@
+#[cfg(feature = "mkl")]
+extern crate intel_mkl_src;
+
+#[cfg(feature = "accelerate")]
+extern crate accelerate_src;
+
+use anyhow::Result;
+use candle_core::{Device, Tensor};
+
+pub const N_ITERS: usize = 5;
+
+fn main() -> Result<()> {
+ let inp = Tensor::randn(0f32, 1., (1, 384, 3000), &Device::Cpu)?;
+ let w = Tensor::randn(0f32, 1., (384, 384, 3), &Device::Cpu)?;
+ let res = inp.conv1d(&w, 0, 1);
+ println!("{res:?}");
+ let start = std::time::Instant::now();
+ for i in 0..N_ITERS {
+ let res = inp.conv1d(&w, 0, 1);
+ println!("{i} {res:?}");
+ }
+ println!("{:?}", start.elapsed() / N_ITERS as u32);
+ Ok(())
+}