Skip to content

AmpereComputing/cbp-ng

Repository files navigation

To compile the default predictor:
./compile cbp

To compile a specific predictor:
./compile cbp -DPREDICTOR="gshare<>"

To simulate one trace:
./cbp cbp6_traces/compress/compress_0_trace.gz compress_0 0 10000000
or
./run cbp cbp6_traces/compress/compress_0_trace.gz

The simulation output per traces is:
(1) trace name, (2) instructions, (3) branches, (4) conditional branches, (5) blocks, (6) P1/P2 divergences, (7) P2 mispredictions, (8) P1 latency (cycles), (9) P2 latency (cycles), (10) dynamic energy per instruction (fJ)

To simulate all "compress" traces:
mkdir OUTDIR
./run_all cbp cbp6_traces/compress OUTDIR

To simulate all traces:
./run_all cbp cbp6_traces OUTDIR

To compute the number of mispredictions per instruction:
./ratio 2 7 OUTDIR

To compute the average IPC, CPI and EPI:
./ipc_cpi_epi.py OUTDIR

====================================================================================
Reference TAGE-SC-L predictor (no timing, no energy):

To compile:
g++ -o reference -O3 reference.cpp -lz

To run one trace:
./reference cbp6_traces/compress/compress_0_trace.gz compress_0 0 10000000
or
./run reference cbp6_traces/compress/compress_0_trace.gz

To simulate all traces:
./run_all reference cbp6_traces OUTDIR
====================================================================================

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages