Monte Carlo Benchmarking Engine
High-performance SIMD Monte Carlo engine (AVX2/NEON) with custom memory allocators and perf logging.
 
Loading...
Searching...
No Matches
pipeline.parse_perf_metrics Namespace Reference

Functions

 debug_print (dict values)
 

Variables

 trials = int(sys.argv[2])
 
 df = pl.read_csv(sys.argv[1], has_header=False)
 
 columns
 
dict field_map
 
dict event_to_key = {v: k for k, v in field_map.items() if v != "NA"}
 
 filtered = df.filter(pl.col("event").is_in(event_to_key.keys()))
 
tuple to_clean
 
dict values = {key: "NA" for key in field_map}
 
 named
 
dict cli_key = event_to_key[row["event"]]
 
list ordered_keys
 

Function Documentation

◆ debug_print()

pipeline.parse_perf_metrics.debug_print ( dict values)

Definition at line 106 of file parse_perf_metrics.py.

106def debug_print(values: dict):
107 for k in ordered_keys:
108 print(f"[DEBUG] {k} = {values.get(k)}", file=sys.stderr)
109
110

Variable Documentation

◆ cli_key

dict pipeline.parse_perf_metrics.cli_key = event_to_key[row["event"]]

Definition at line 86 of file parse_perf_metrics.py.

◆ columns

pipeline.parse_perf_metrics.columns

Definition at line 52 of file parse_perf_metrics.py.

◆ df

pipeline.parse_perf_metrics.df = pl.read_csv(sys.argv[1], has_header=False)

Definition at line 51 of file parse_perf_metrics.py.

◆ event_to_key

dict pipeline.parse_perf_metrics.event_to_key = {v: k for k, v in field_map.items() if v != "NA"}

Definition at line 71 of file parse_perf_metrics.py.

◆ field_map

dict pipeline.parse_perf_metrics.field_map
Initial value:
1= {
2 "cycles": "cycles:u",
3 "instr": "instructions:u",
4 "cache_loads": "cache-references:u",
5 "cache_miss": "cache-misses:u",
6 "l1_loads": "L1-dcache-loads:u",
7 "l1_misses": "L1-dcache-load-misses:u",
8 "l2_loads": "NA",
9 "l2_misses": "NA",
10 "l3_loads": "NA",
11 "l3_misses": "NA",
12 "tlb_loads": "dTLB-loads:u",
13 "tlb_misses": "dTLB-load-misses:u",
14 "branch_instr": "branch-instructions:u",
15 "branch_misses": "branch-misses:u",
16}

Definition at line 54 of file parse_perf_metrics.py.

◆ filtered

pipeline.parse_perf_metrics.filtered = df.filter(pl.col("event").is_in(event_to_key.keys()))

Definition at line 72 of file parse_perf_metrics.py.

◆ named

pipeline.parse_perf_metrics.named

Definition at line 85 of file parse_perf_metrics.py.

◆ ordered_keys

list pipeline.parse_perf_metrics.ordered_keys
Initial value:
1= [
2 "cycles", "instr", "ipc",
3 "cache_loads", "cache_miss",
4 "l1_loads", "l1_misses",
5 "l2_loads", "l2_misses",
6 "l3_loads", "l3_misses",
7 "tlb_loads", "tlb_misses",
8 "branch_instr", "branch_misses",
9 "miss_per_trial", "cycles_per_trial"
10]

Definition at line 94 of file parse_perf_metrics.py.

◆ to_clean

tuple pipeline.parse_perf_metrics.to_clean
Initial value:
1= (
2 pl.when(pl.col("value").cast(pl.Float64, strict=False).is_null())
3 .then(pl.lit("NA"))
4 .otherwise(pl.col("value").cast(pl.Utf8)) # stringify numeric
5)

Definition at line 75 of file parse_perf_metrics.py.

◆ trials

pipeline.parse_perf_metrics.trials = int(sys.argv[2])

Definition at line 49 of file parse_perf_metrics.py.

◆ values

dict pipeline.parse_perf_metrics.values = {key: "NA" for key in field_map}

Definition at line 83 of file parse_perf_metrics.py.