File tree Expand file tree Collapse file tree 3 files changed +11
-6
lines changed Expand file tree Collapse file tree 3 files changed +11
-6
lines changed Original file line number Diff line number Diff line change @@ -5,15 +5,16 @@ edition = "2018"
55publish = false
66
77[dependencies ]
8- criterion = " 0.3 "
8+ criterion = " 0.5 "
99memchr = " 2.4"
1010memmem = " 0.1"
1111sliceslice = { path = " .." }
1212sse4-strstr = { path = " sse4-strstr" , optional = true }
1313twoway = " 0.2"
1414
1515[target .'cfg(target_os = "linux")' .dependencies ]
16- criterion-linux-perf = " 0.1"
16+ criterion-perf-events = " 0.4.0"
17+ perfcnt = " 0.8"
1718
1819[[bench ]]
1920name = " i386"
Original file line number Diff line number Diff line change @@ -4,8 +4,10 @@ use criterion::{
44 Criterion ,
55} ;
66#[ cfg( target_os = "linux" ) ]
7- use criterion_linux_perf :: { PerfMeasurement , PerfMode } ;
7+ use criterion_perf_events :: Perf ;
88use memmem:: { Searcher , TwoWaySearcher } ;
9+ #[ cfg( target_os = "linux" ) ]
10+ use perfcnt:: linux:: { HardwareEventType , PerfCounterBuilderLinux } ;
911use std:: {
1012 fs:: File ,
1113 io:: { BufRead , BufReader } ,
@@ -295,7 +297,7 @@ criterion_group!(
295297#[ cfg( target_os = "linux" ) ]
296298criterion_group ! (
297299 name = i386_perf_instructions;
298- config = Criterion :: default ( ) . with_measurement( PerfMeasurement :: new( PerfMode :: Instructions ) ) ;
300+ config = Criterion :: default ( ) . with_measurement( Perf :: new( PerfCounterBuilderLinux :: from_hardware_event ( HardwareEventType :: Instructions ) ) ) ;
299301 targets = search_short_haystack, search_long_haystack, search_random_haystack
300302) ;
301303
Original file line number Diff line number Diff line change @@ -4,8 +4,10 @@ use criterion::{
44 BenchmarkId , Criterion ,
55} ;
66#[ cfg( target_os = "linux" ) ]
7- use criterion_linux_perf :: { PerfMeasurement , PerfMode } ;
7+ use criterion_perf_events :: Perf ;
88use memmem:: { Searcher , TwoWaySearcher } ;
9+ #[ cfg( target_os = "linux" ) ]
10+ use perfcnt:: linux:: { HardwareEventType , PerfCounterBuilderLinux } ;
911
1012fn search < M : Measurement > ( c : & mut Criterion < M > ) {
1113 let haystack = include_str ! ( "../../data/haystack" ) ;
@@ -105,7 +107,7 @@ criterion_group!(
105107#[ cfg( target_os = "linux" ) ]
106108criterion_group ! (
107109 name = random_perf_instructions;
108- config = Criterion :: default ( ) . with_measurement( PerfMeasurement :: new( PerfMode :: Instructions ) ) ;
110+ config = Criterion :: default ( ) . with_measurement( Perf :: new( PerfCounterBuilderLinux :: from_hardware_event ( HardwareEventType :: Instructions ) ) ) ;
109111 targets = search
110112) ;
111113
You can’t perform that action at this time.
0 commit comments