[net.arch] Query for stats on instruction usage

gjk@talcott.UUCP (Greg J Kuperberg) (11/28/84)

I am curious about the following concerning your "average" compiled (or
even assembled) code:

1)  What is the density of conditional branch instructions?
2)  How often does a branch actually occur?
3)  What is the density of unconditional branches?
4)  What is the density of subroutine calls?
5)  What is the average distance that an unconditional branch "jumps"?

These questions seem relevant to instruction cache issues.

stern@inmet.UUCP (12/07/84)

[I'm not a librarian]

Good places to look to find answers to these questions:
(1) Fairclough, Dennis A.  "A Unique Microprocessor Instruction Set"
    _IEEE_Micro_ 2:2 (May 1982) : 8-18
(2) Guterl, Fred. "Chip Architecture: A Revolution Brewing"  _IEEE_Spectrum_
    20:7 (July 1983) : 30-37
(3) Kleir, RL and CV Ramamoorthy, "Optimization Strategies for Microprograms"
    _IEEE_Transactions_on_Computers_  C-20:7 (July 1971) : 783-794
(4) Myers, Glenford J. _Advances_in_Computer_Architecture.  New York: John
    Wiley and Sons, 1978.  Several sections on instruction frequency in both
    static (ie what the compiler produces) and dynamic (how often they are
    executed) situations.

Good bed time reading.

--Hal Stern
  Intermetrics, Inc.
  {ihnp4, harpo, esquire, ima}!inmet!stern