Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/eigenform/perfect
/ types & classes
Types & classes
167 in github.com/eigenform/perfect
⨍
Functions
580
◇
Types & classes
167
↓ 12 callers
Class
RawResults
perfect/src/stats.rs:93
↓ 11 callers
Class
VirtualAddress
perfect-zen3/src/bin/collide-probe.rs:43
↓ 9 callers
Enum
Gpr
perfect/src/asm.rs:1003
↓ 4 callers
Class
BfProg
Describes a simple boolean function. Each N-th [`BfOp`] in the program computes the value of output bit 'N'.
perfect/src/ir/bf.rs:40
↓ 3 callers
Class
BranchPattern
perfect/src/experiments/branch.rs:58
↓ 1 callers
Class
LeakedValue
perfect-zen2/src/bin/zenbleed.rs:528
↓ 1 callers
Class
LegacyOpcode
perfect/src/experiments/decoder.rs:132
↓ 1 callers
Class
ModRm
perfect/src/experiments/decoder.rs:112
↓ 1 callers
Class
NormalizedResults
perfect/src/stats.rs:126
↓ 1 callers
Class
Opcode38
perfect/src/experiments/decoder.rs:139
↓ 1 callers
Class
Opcode3a
perfect/src/experiments/decoder.rs:146
↓ 1 callers
Class
OpcodeVex2
perfect/src/experiments/decoder.rs:161
↓ 1 callers
Class
OpcodeVex3
perfect/src/experiments/decoder.rs:154
↓ 1 callers
Class
OpcodeXop3
perfect/src/experiments/decoder.rs:168
↓ 1 callers
Class
PageMapEntry
perfect/src/util/pagemap.rs:5
↓ 1 callers
Class
RandomEncoding
perfect/src/experiments/decoder.rs:215
↓ 1 callers
Class
RexPrefix
perfect/src/experiments/decoder.rs:101
↓ 1 callers
Class
Sib
perfect/src/experiments/decoder.rs:122
Class
Align
perfect/src/util.rs:463
Class
AlignedAddress
perfect/src/util.rs:482
Class
Args
perfect-zen2/src/bin/pmc.rs:21
Class
Args
perfect/src/bin/perfect-env.rs:96
Interface
AsEventDesc
Implemented on some type representing an event for a particular platform.
perfect/src/events.rs:12
Interface
AsPattern
perfect/src/experiments/branch.rs:23
Class
BTBAliasArgs
perfect-zen2/src/bin/btb.rs:78
Class
BTBAliasTest
perfect-zen2/src/bin/btb.rs:66
Class
BTBAliasing
Demonstrate the effects of aliasing BTB entries. Context ======= A "branch target buffer" (BTB) is a structure that maintains information about prev
perfect-zen2/src/bin/btb.rs:172
Enum
BTBCollideOp
Operations used to create BTB collisions
perfect/src/uarch/btb.rs:30
Enum
BfOp
perfect/src/ir/bf.rs:8
Enum
BpL1TlbFetchHitMask
perfect/src/events/zen2.rs:190
Enum
BpL1TlbMissL2TlbMissMask
perfect/src/events/zen2.rs:133
Enum
BpRedirectMask
perfect/src/events/zen2.rs:172
Enum
BrMispMask
perfect/src/events/tremont.rs:31
Class
BranchDesc
perfect/src/ir/branch.rs:104
Class
BranchGroup
perfect-zen2/src/bin/bp.rs:81
Class
BranchOutcomes
perfect/src/experiments/branch.rs:72
Class
BranchRecord
perfect-zen2/src/bin/bp.rs:16
Class
BranchSet
perfect/src/ir/branch.rs:18
Class
ClearGhist
perfect-zen2/src/bin/bp.rs:158
Class
ClearGhistArgs
perfect-zen2/src/bin/bp.rs:148
Class
CollideAndProbe
Demonstrate the Collide+Probe side-channel. Context ======= The paper[^1] describes a timing side-channel that follows from the implementation of th
perfect-zen3/src/bin/collide-probe.rs:223
Enum
Command
perfect/src/bin/perfect-env.rs:52
Class
ConditionalBranch
perfect/src/experiments/branch.rs:107
Class
CorrelatedBranches
[Naively?] try to interfere with two correlated conditional branches. Context ======= Predicting the *direction* of a branch usually entails the fol
perfect-zen2/src/bin/bp.rs:399
Class
CorrelatedBranchesSimple
Alternate version of [`CorrelatedBranches`], but with a single padding branch taken in a loop some variable number of times. In this case, the correl
perfect-zen2/src/bin/bp.rs:589
Enum
CpuFeature
perfect/src/bin/perfect-env.rs:18
Enum
DeDisDispatchTokenStalls0Mask
perfect/src/events/zen2.rs:318
Enum
DeDisDispatchTokenStalls1Mask
perfect/src/events/zen2.rs:281
Enum
DeDisOpsFromDecoderMask
perfect/src/events/zen2.rs:260
Enum
DeMsStallMask
perfect/src/events/zen2.rs:214
Enum
DeSrcOpDispMask
perfect/src/events/zen2.rs:242
Interface
DependentVariable
Implemented on suitable "input" variable types associated with a particular set of measurements (ie. in [`EventResults`]). NOTE: So far, we really on
perfect/src/stats.rs:157
Class
DispatchTest
Use PMC events to characterize instruction dispatch. Context ======= According to different revisions of the SOG, there are three ways that an x86 i
perfect-zen2/src/bin/dispatch.rs:76
Class
Div
Explore the data-dependent behavior of the x86 DIV instruction. Scan over the space of input values to DIV and record the latency.
perfect-zen3/src/bin/div.rs:162
Enum
DsTokStall3Mask
perfect/src/events/zen2.rs:352
Class
DynamicEmitterCases
A "dynamic" list of emitter cases (extensible during runtime).
perfect/src/experiments.rs:58
Interface
Emitter
Utility functions you might want on something implementing [DynasmApi].
perfect/src/asm.rs:553
Class
EmitterDesc
perfect/src/experiments.rs:28
Class
EmitterResults
perfect-zen2/src/bin/pmc.rs:350
Class
EntryBleed
Demonstrate the behavior of CVE-2022-4543 ("EntryBleed"). Context ======= In Linux, kernel virtual addresses are usually randomized in an attempt t
perfect-zen2/src/bin/entrybleed.rs:110
Class
EventDesc
perfect/src/events.rs:39
Class
EventGroup
perfect/src/events.rs:147
Class
EventResults
perfect-zen2/src/bin/pmc.rs:344
Class
EventResults
perfect/src/stats.rs:167
Class
EventSet
perfect/src/events.rs:83
Interface
Experiment
perfect/src/experiments.rs:21
Class
ExperimentArgs
perfect/src/experiments.rs:15
Class
ExperimentCaseResults
perfect/src/stats.rs:289
Class
ExperimentResults
Set of results associated with a particular experiment.
perfect/src/stats.rs:387
Enum
FeatureState
perfect/src/bin/perfect-env.rs:40
Class
FlushReload
Simple synthetic example of cache timing with FLUSH+RELOAD. Context ======= This is an example of how speculative loads can leave measurable side-ef
perfect-zen2/src/bin/flush-reload.rs:51
Enum
FpRetSseAvxOpsMask
perfect/src/events/zen2.rs:7
Class
GprState
perfect/src/harness/state.rs:18
Class
Gregs
perfect/src/harness/signal.rs:25
Class
GroupResults
perfect-zen2/src/bin/pmc.rs:361
Class
HarnessConfig
perfect/src/harness/config.rs:36
Class
HarnessStack
perfect/src/harness/state.rs:7
Enum
IRAnyOperand
perfect/src/ir.rs:98
Enum
IRImmOperand
perfect/src/ir.rs:46
Enum
IRMemOperand
perfect/src/ir.rs:71
Enum
IRRegOperand
perfect/src/ir.rs:25
Enum
IcFetchStallCycMask
perfect/src/events/zen2.rs:152
Enum
IndBrn
perfect-zen2/src/bin/btb.rs:55
Class
Input
perfect-zen3/src/bin/div.rs:31
Interface
InputGenerator
Auto-implemented on function types that are suitable for generating input to a measured function. [PerfectHarness::measure_vary] expects a type like
perfect/src/harness/input.rs:17
Enum
InputMethod
perfect/src/harness/input.rs:25
Class
IntPrfPressure
Create integer physical register file (PRF) pressure. Context ======= Each time we execute an instruction with some register result (apart from ones
perfect-zen2/src/bin/int.rs:86
Class
KallsymsEntry
perfect-zen2/src/bin/entrybleed.rs:277
Class
KernelPrefetch
Use performance counters to demonstrate some interesting behavior of the `PREFETCH` instruction. Context ======= It is widely known[^1][^2] that imp
perfect-zen2/src/bin/prefetch.rs:83
Class
L1DWayPredictorMiss
Try to intentionally create L1D cache way mispredictions. Context ======= In the Zen 2 microarchitecture, the L1 data cache is 32KiB set-associative
perfect-zen2/src/bin/dcache.rs:186
Enum
LegacyPrefix
perfect/src/experiments/decoder.rs:11
Enum
LegacyPrefix1
perfect/src/experiments/decoder.rs:39
Enum
LegacyPrefix2
perfect/src/experiments/decoder.rs:58
Enum
LegacyPrefix3
perfect/src/experiments/decoder.rs:84
Class
LoadQueueCapacity
Create load queue pressure. Context ======= In the Zen microarchitecture, a load queue (LDQ) keeps track of pending loads. The capacity of the load
perfect-zen2/src/bin/ldq.rs:52
Enum
LsBadStatus2Mask
perfect/src/events/zen2.rs:56
Enum
LsDataPipeMask
perfect/src/events/zen2.rs:70
Enum
LsDispatchMask
perfect/src/events/zen2.rs:115
Enum
LsL1DtlbMissMask
perfect/src/events/zen2.rs:27
Enum
LsMabAllocMask
perfect/src/events/zen2.rs:94
next →
1–100 of 167, ranked by callers