Re: 90/10 rule... source?

Derek M Jones <>
12 Jan 2004 13:27:20 -0500

          From comp.compilers

Related articles
90/10 rule... source? (Jens Troeger) (2004-01-09)
Re: 90/10 rule... source? (2004-01-12)
Re: 90/10 rule... source? (Derek M Jones) (2004-01-12)
Re: 90/10 rule... source? (2004-01-16)
Re: 90/10 rule... source? (Mike Kent) (2004-01-16)
Re: 90/10 rule... source? (Derek M Jones) (2004-01-17)
Re: 90/10 rule... source? (James Cownie) (2004-01-22)
Re: 90/10 rule... source? (2004-01-22)
Re: 90/10 rule... source? (Derek M Jones) (2004-01-31)
| List of all articles for this month |

From: Derek M Jones <>
Newsgroups: comp.compilers
Date: 12 Jan 2004 13:27:20 -0500
Organization: Knowledge Software
References: 04-01-038
Keywords: optimize, practice, comment
Posted-Date: 12 Jan 2004 13:27:20 EST


> I am looking for a (the) original paper on the 90/10 rule of program
> execution. So far I found this reference

I think the 90/10 rule might qualify as an urban legend.
Example 8 of Knuth's paper quotes a 90% figure, but many of the
other examples are around the 50% mark (a few 70%'s).

> @ARTICLE{Knuth71,
> AUTHOR = "Donald E. Knuth",
> TITLE = "An Empirical Study of {FORTRAN} Programs",
> JOURNAL = "Software---Practice and Experience",
> VOLUME = 1,
> PAGES = {105--133},
> YEAR = 1971
> }
> but I couldn't get my hands on a copy of that paper. Is it the one I
> am looking for?

The following paper found 88% of the time being spent in 20% of
the code.

    author = "Dinesh C. Suresh and Satya R. Mohanty and Walid A.
                                  Najjar and Laxmi N. Bhuyan and Frank Vahid",
    title = "Loop Level Analysis of Security and Network
    booktitle = "Workshop on Computer Architecture Evaluation using
                                  Commercial Workloads ({CAECW}-03)",
    pages = "???",
    month = feb,
    year = "2003",

While I have been able to find plenty of papers anlysing loops, I have
not been able to find any that analyse a range of substantial programs
(there are a few dealing with small embedded application) and come to
the conclusion that 90% of the time is spent in 10% of the code.

The following analyses found that most of the time was not even
spent in loops!

    author = "Alex Ram\'{\i}rez and Josep-L. Larriba-Pey and Carlos
                                  Navarro and Xavi Serrano and Josep Torrellas and Mateo
    booktitle = "{IEEE} International Conference on Parallel Processing
    title = "Code Reordering of Decision Support Systems for
                                  Optimized Instruction Fetch",
    year = "1999",

    author = "Josep Torrellas and Chun Xia and Russell L. Daigle",
    title = "Optimizing the Instruction Cache Performance of the
                                  Operating System",
    journal = "IEEE Transactions on Computers",
    volume = "47",
    number = "12",
    pages = "1363--1381",
    year = "1998",
[I think the 90/10 rule comes from databases, where long before there
were computerized files it was well known that in most record systems,
a small set of records got most of the lookups. -John]

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.