Report Number: CSL-TR-78-156
Institution: Stanford University, Computer Systems Laboratory
Title: Optimal program control structures based on the concept of decision entropy
Author: Lee, Ruby Bei-Loh
Date: July 1978
Abstract: The ability to make decisions dynamically during program
execution is a very powerful and valuable tool.
Unfortunately, it also causes severe performance degradations
in high-speed computer organizations which use parallel,
pipelined or lookahead techniques to speed up program
execution. An optimal control structure is one where the
average number of decisions to be made during program
execution is minimal among all control structures for the
program. Since decisions are usually represented by
conditional branch instructions, finding an optimal control
structure is equivalent to minimizing the expected number of
conditional branch instructions to be encountered per program
execution.
By decision entropy, we mean a quantitative characterization
of the uncertainty in the instruction stream due to dynamic
decisions imbedded in the program. We define this concept of
decision entropy in the Channon information-theoretic sense.
We show that a program's intrinsic decision entropy is an
absolute lower bound on the expected number of decisions, or
conditional branch instructions, per program execution. We
show that this lower bound is achieved if each decision has
maximum uncertainty. We also indicate how optimal control
structures may be constructed.
http://i.stanford.edu/pub/cstr/reports/csl/tr/78/156/CSL-TR-78-156.pdf