From owner-freebsd-questions@FreeBSD.ORG Mon May 25 07:17:18 2009 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D5924106564A for ; Mon, 25 May 2009 07:17:18 +0000 (UTC) (envelope-from bennett@cs.niu.edu) Received: from mp.cs.niu.edu (mp.cs.niu.edu [131.156.145.41]) by mx1.freebsd.org (Postfix) with ESMTP id 8E8B98FC0C for ; Mon, 25 May 2009 07:17:18 +0000 (UTC) (envelope-from bennett@cs.niu.edu) Received: from mp.cs.niu.edu (bennett@localhost [127.0.0.1]) by mp.cs.niu.edu (8.14.3/8.14.3) with ESMTP id n4P7GM52015600; Mon, 25 May 2009 02:16:22 -0500 (CDT) Date: Mon, 25 May 2009 02:16:22 -0500 (CDT) From: Scott Bennett Message-Id: <200905250716.n4P7GMM4015599@mp.cs.niu.edu> To: freebsd-questions@freebsd.org, Wojciech Puchar Cc: Subject: Re: How can this 'top' command output make sense? Load over 7 and total CPU use ~5% X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 May 2009 07:17:19 -0000 On Sun, 24 May 2009 20:22:37 +0200 (CEST) Wojciech Puchar wrote, *again* without attribution: >> From the glossary (p. 630) of _The_Design_and_Implementation_of_the >> _FreeBSD_Operating_System_ by McKusick and Neville-Neil: >> >> load average A measure of CPU load on the system. The load average >> in FreeBSD is an average of the number of processes ready to >> run or waiting for short-term events such as disk I/O to >> complete, as sampled once per second over the previous one- >> minute interval of system operation. >> >so this glossary should be fixed because it's nonsense. > >first - says that it's measure of CPU load >then - "or waiting for short-term events such as disk I/O" - which is NOT >measure of CPU load. You are mistaken. I think what you are referring to is the percentage of CPU usage, not CPU load. Note that CPU usage can never exceed 100% per CPU, laying aside confusion over application of this term to hyperthreading chips, whereas CPU load obviously can be much higher. It might help you to think of "CPU load" as "CPU commitment". If you wish to design an operating system and then write its documentation, you will, of course, be free to define terms relating to your system in whatever manner you like. However, the authors of the book are not only among the architects of FreeBSD, but also 4.?BSD UNIX and possibly earlier versions of BSD UNIX. They have been good enough to document what they have done and to define what they mean by terms used in that documentation and throughout the system, which most of the non-self-righteously arrogant members of the community appreciate. Treat the information in this book as having come from the horses' mouths, excepting only those parts that have been added/ changed/deleted since FreeBSD 5.2. FWIW, the concept of load average in UNIX is quite old. I don't know exactly how old it is, but it may date back to 7th Ed. UNIX from AT&T or even earlier. BSD UNIX branched off about that time or possibly 6th Ed. The definition of load average cited above is essentially the average length of the queue of runnable processes (including those that are currently running) plus the processes expected to be runnable in the immediate future, e.g., much sooner than a hypothetical process that has been swapped out could be made runnable. Scott Bennett, Comm. ASMELG, CFIAG ********************************************************************** * Internet: bennett at cs.niu.edu * *--------------------------------------------------------------------* * "A well regulated and disciplined militia, is at all times a good * * objection to the introduction of that bane of all free governments * * -- a standing army." * * -- Gov. John Hancock, New York Journal, 28 January 1790 * **********************************************************************