Path: utzoo!utgpu!watserv1!watdragon!watsol!tbray From: tbray@watsol.waterloo.edu (Tim Bray) Newsgroups: comp.unix.wizards Subject: Gripe about mickey-mouse VM behaviour on many Unixes Keywords: MIPS, System-V, paging performance, working-set Message-ID: <19821@watdragon.waterloo.edu> Date: 16 Jan 90 03:28:19 GMT References: <1990Jan15.184042.7564@keysec.kse.com> Sender: daemon@watdragon.waterloo.edu Reply-To: tbray@watsol.waterloo.edu (Tim Bray) Distribution: world Organization: U. of Waterloo, Ontario Lines: 38 gm@keysec.kse.com (Greg McGary) writes: >Our MIPS M/120 has been spending too much time page-thrashing lately. >I would like to have a utility that tells me about the paging behavior... Good luck, you'll need it. Here at the New OED project we have got seriously cheesed off about VM implementations on many unix systems. No matter how much you have, memory remains a critical resource. But even well-regarded Unixes don't give you the tools to manage it. In many applications (e.g. database indexing) performance of algorithms can be greatly improved by knowing how much physical memory you can use, and tuning to use it efficiently. But not on Unix. Some case studies: 1. On a 32-Mb (4.3bsd) machine with *nothing* else happening, the OS stupidly pages away at you if you try to use more than about 20 Mb in the inane belief that the memory will be needed any moment for one of those gettys or nfsds or something that aren't doing anything. 2. A process using only a moderate amount of memory (you think) runs like a dog, and you note that the system is spending much of its time in system state or idle. Why, you wonder. It quickly becomes apparent that the information produced by items such as ps, vmstat, vsar, top, and so on, is comparable in relevance and accuracy to Robert Ludlum novels or peyote visions. (SunOS the villain here). 3. On a 64-Mb (MIPS) machine, your paging rate, system time, and idle time all go through the roof if your process insolently tries to random-access more than 32 Mb of memory at once. Look, we all appreciate the tender loving care that VM architects have put into strategies that are friendly to 100+ moderate-size processes context switching rapidly in time-sharing mode. But there are other ways to use computers, and they are currently very poorly supported. We paid for that memory, we have a good use for it, and the OS is getting in our way, and it's also REFUSING TO TELL US ACCURATELY WHAT'S GOING ON - an unforgiveable sin by my Unix dogma. Harrumph, Tim Bray, New OED Project, U of Waterloo