Skip to content

Simulates 3 different types of branch prediction given a set of results to test their accuracy

Notifications You must be signed in to change notification settings

L-u-k-e/Branch-Predictor-Simulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

Branch-Predictor-Simulator

Simulates 3 different types of branch prediction given a set of results to test their accuracy

  • Fixed (always picks true)
  • Static (first taken)
  • dynamic (two layer adaptive learner)

Input file needs to be formatted like

branch address\t[@.]]\ttarget address

Where @ means the branch was taken and . means it wasnt. So for example:

0x7fa5af528cd3	@	0x7fa5af52cc30
0x7fa5af52cc7f	.	0x7fa5af52cc85
0x7fa5af52ccc1	@	0x7fa5af52ccdf
0x7fa5af52cce3	@	0x7fa5af52ccc8
0x7fa5af52ccdd	.	0x7fa5af52ccdf

Run like:

python3 input.trace

About

Simulates 3 different types of branch prediction given a set of results to test their accuracy

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages