Java Fast Path-Based Neural Branch Predictor

The following Java files simulate the fast path-nased neural branch predictor described in my MICRO 2003 paper. The driver program accepts a sequence of traces as 4-byte binary integers where the high bit represents the branch outcome and the lower 31 bits represent the branch address. The driver program assumes that there are 17 million traces, one million each from the 17 SPEC integer benchmarks used in the paper. These traces are not what were used for the paper; they are very small samples of the enormous numbers of branches generated by these benchmarks.

To run the driver, download all the Java files and the gzip'ed traces, then type the following (assuming some sort of Unix):

javac driver.java
gzip -dc traces.gz | java driver
Here are the files: You may find the following files helpful: The fast path-based neural branch predictor is supported by NSF Grant CCR-0311091. This page was written by Daniel Jiménez