pub enum EventKind {
Show 29 variants
Ir,
SysCount,
SysTime,
SysCpuTime,
Ge,
Dr,
Dw,
I1mr,
D1mr,
D1mw,
ILmr,
DLmr,
DLmw,
L1hits,
LLhits,
RamHits,
TotalRW,
EstimatedCycles,
Bc,
Bcm,
Bi,
Bim,
ILdmr,
DLdmr,
DLdmw,
AcCost1,
AcCost2,
SpLoss1,
SpLoss2,
}
default
only.Expand description
All EventKind
s callgrind produces and additionally some derived events
Depending on the options passed to Callgrind, these are the events that Callgrind can produce. See the Callgrind documentation for details.
Variants§
Ir
The default event. I cache reads (which equals the number of instructions executed)
SysCount
The number of system calls done (–collect-systime=yes)
SysTime
The elapsed time spent in system calls (–collect-systime=yes)
SysCpuTime
The cpu time spent during system calls (–collect-systime=nsec)
Ge
The number of global bus events (–collect-bus=yes)
Dr
D Cache reads (which equals the number of memory reads) (–cache-sim=yes)
Dw
D Cache writes (which equals the number of memory writes) (–cache-sim=yes)
I1mr
I1 cache read misses (–cache-sim=yes)
D1mr
D1 cache read misses (–cache-sim=yes)
D1mw
D1 cache write misses (–cache-sim=yes)
ILmr
LL cache instruction read misses (–cache-sim=yes)
DLmr
LL cache data read misses (–cache-sim=yes)
DLmw
LL cache data write misses (–cache-sim=yes)
L1hits
Derived event showing the L1 hits (–cache-sim=yes)
LLhits
Derived event showing the LL hits (–cache-sim=yes)
RamHits
Derived event showing the RAM hits (–cache-sim=yes)
TotalRW
Derived event showing the total amount of cache reads and writes (–cache-sim=yes)
EstimatedCycles
Derived event showing estimated CPU cycles (–cache-sim=yes)
Bc
Conditional branches executed (–branch-sim=yes)
Bcm
Conditional branches mispredicted (–branch-sim=yes)
Bi
Indirect branches executed (–branch-sim=yes)
Bim
Indirect branches mispredicted (–branch-sim=yes)
ILdmr
Dirty miss because of instruction read (–simulate-wb=yes)
DLdmr
Dirty miss because of data read (–simulate-wb=yes)
DLdmw
Dirty miss because of data write (–simulate-wb=yes)
AcCost1
Counter showing bad temporal locality for L1 caches (–cachuse=yes)
AcCost2
Counter showing bad temporal locality for LL caches (–cachuse=yes)
SpLoss1
Counter showing bad spatial locality for L1 caches (–cachuse=yes)
SpLoss2
Counter showing bad spatial locality for LL caches (–cachuse=yes)
Implementations§
source§impl EventKind
impl EventKind
sourcepub fn is_derived(&self) -> bool
pub fn is_derived(&self) -> bool
Return true if this EventKind
is a derived event
Derived events are calculated from Callgrind’s native event types. See also
[crate::runner::callgrind::model::Metrics::make_summary
]. Currently all derived events
are:
pub fn from_str_ignore_case(value: &str) -> Option<EventKind>
pub fn to_name(&self) -> String
Trait Implementations§
source§impl<'de> Deserialize<'de> for EventKind
impl<'de> Deserialize<'de> for EventKind
source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<EventKind, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<EventKind, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
source§impl Serialize for EventKind
impl Serialize for EventKind
source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Copy for EventKind
impl Eq for EventKind
impl StructuralPartialEq for EventKind
Auto Trait Implementations§
impl Freeze for EventKind
impl RefUnwindSafe for EventKind
impl Send for EventKind
impl Sync for EventKind
impl Unpin for EventKind
impl UnwindSafe for EventKind
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)