File tree Expand file tree Collapse file tree 2 files changed +36
-0
lines changed Expand file tree Collapse file tree 2 files changed +36
-0
lines changed Original file line number Diff line number Diff line change @@ -6,3 +6,10 @@ edition = "2018"
6
6
7
7
[dependencies .intel-mkl-src ]
8
8
path = " ../intel-mkl-src"
9
+
10
+ [dev-dependencies ]
11
+ criterion = " *"
12
+
13
+ [[bench ]]
14
+ name = " cos"
15
+ harness = false
Original file line number Diff line number Diff line change
1
+ #[ macro_use]
2
+ extern crate criterion;
3
+
4
+ use criterion:: Criterion ;
5
+
6
+ fn criterion_benchmark ( c : & mut Criterion ) {
7
+ for & n in & [ 100 , 1000 , 10000 ] {
8
+ c. bench_function ( & format ! ( "cos{}" , n) , |b| {
9
+ let in_ = vec ! [ 0.0_f64 ; n] ;
10
+ let mut out = vec ! [ 0.0_f64 ; n] ;
11
+ b. iter ( || {
12
+ for i in 0 ..n {
13
+ out[ i] = in_[ i] . cos ( ) ;
14
+ }
15
+ } )
16
+ } ) ;
17
+
18
+ c. bench_function ( & format ! ( "vcos{}" , n) , |b| {
19
+ let in_ = vec ! [ 0.0_f64 ; n] ;
20
+ let mut out = vec ! [ 0.0_f64 ; n] ;
21
+ b. iter ( || unsafe {
22
+ intel_mkl_sys:: vdCos ( n as i32 , in_. as_ptr ( ) , out. as_mut_ptr ( ) ) ;
23
+ } )
24
+ } ) ;
25
+ }
26
+ }
27
+
28
+ criterion_group ! ( benches, criterion_benchmark) ;
29
+ criterion_main ! ( benches) ;
You can’t perform that action at this time.
0 commit comments