Entry Young:1999:SCB from toplas.bib

Last update: Tue May 1 02:05:46 MDT 2012                Valid HTML 3.2!

Index sections

Top | Symbols | Math | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

BibTeX entry

@Article{Young:1999:SCB,
  author =       "Cliff Young and Michael D. Smith",
  title =        "Static correlated branch prediction",
  journal =      j-TOPLAS,
  volume =       "21",
  number =       "5",
  pages =        "1028--1075",
  month =        sep,
  year =         "1999",
  CODEN =        "ATPSDT",
  ISSN =         "0164-0925 (print), 1558-4593 (electronic)",
  ISSN-L =       "0164-0925",
  bibdate =      "Tue Sep 26 10:12:58 MDT 2000",
  bibsource =    "http://www.acm.org/pubs/contents/journals/toplas/;
                 http://www.math.utah.edu/pub/tex/bib/toplas.bib",
  URL =          "http://www.acm.org/pubs/articles/journals/toplas/1999-21-5/p1028-young/p1028-young.pdf;
                 http://www.acm.org/pubs/citations/journals/toplas/1999-21-5/p1028-young/",
  abstract =     "Recent work in history-based branch prediction uses
                 novel hardware structures to capture branch correlation
                 and increase branch prediction accuracy. {\em Branch
                 correlation\/} occurs when the outcome of a conditional
                 branch can be accurately predicted by observing the
                 outcomes of previously executed branches in the dynamic
                 instruction stream. In this article, we show how to
                 instrument a program so that it is practical to collect
                 run-time statistics that indicate where branch
                 correlation occurs, and we then show how to use these
                 statistics to transform the program so that its static
                 branch prediction accuracy is improved. The run-time
                 information that we gather is called a {\em path
                 profile}, and it summarizes how often each executed
                 sequence of program points occurs in the program trace.
                 Our path profiles are more general than those
                 previously proposed. The code transformation that we
                 present is called {\em static correlated branch
                 prediction\/} (SCBP). It exhibits better branch
                 prediction accuracy than previously thought possible
                 for static prediction techniques. Furthermore, through
                 the use of an overpruning heuristic, we show that it is
                 possible to determine automatically an appropriate
                 trade-off between code expansion and branch
                 predictability so that our transformation improves the
                 performance of multiple-issue, deeply pipelined
                 microprocessors like those being built today.",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM Transactions on Programming Languages and
                 Systems",
  generalterms = "Algorithms; Languages; Performance",
  keywords =     "branch correlation; branch prediction; path profiling;
                 profile-driven optimization",
  subject =      "Hardware --- Control Structures and Microprogramming
                 --- Control Design Styles (B.1.1); Software ---
                 Programming Languages --- Processors (D.3.4): {\bf
                 Compilers}; Computer Systems Organization --- Processor
                 Architectures --- Single Data Stream Architectures
                 (C.1.1): {\bf RISC/CISC, VLIW architectures}; Software
                 --- Programming Languages --- Processors (D.3.4): {\bf
                 Optimization}",
}

Related entries