[OpenIndiana-discuss] Mitigating the performance impact of scrub
pulaskite at yahoo.com
Thu Sep 27 17:02:46 UTC 2012
--- On Thu, 9/27/12, Robbie Crash <sardonic.smiles at gmail.com> wrote:
> From: Robbie Crash <sardonic.smiles at gmail.com>
> Subject: Re: [OpenIndiana-discuss] Mitigating the performance impact of scrub
> To: "Discussion list for OpenIndiana" <openindiana-discuss at openindiana.org>
> Date: Thursday, September 27, 2012, 11:10 AM
> Right, my OI box sits in the back
> streaming media, so I don't need it to do
> anything else. I sometimes forget that people use computers
> in ways I do
All too many people don't just forget. They assume everyone else is doing the same things they are. This is how I separate the pros from the amateurs. The pros realize everyone is doing something different w/ the computer. And the actual workload determines what the correct answer is.
In VMS, you could set several parameters which controlled how much of physical memory a process got.
WS_QUOTA - minimum resident working set
WS_DEFAULT - default working set
WS_EXTENT - maximum allowed working set
By setting a very small quota for the batch queue and a larger quota for interactive processes I was able to run the machine at 100% CPU utilization doing seismic modeling and it would seem like an idle machine for interactive users. I did this because the other grad students were loading the batch queues w/ a week of two of work at a pop which made it impossible for me to use the machine either to do the admin or to do real work. In both instances WS_EXTENT was set to allow using all the memory if there were no other processes running.
Unfortunately, this is harder to implement in a fork-exec system than in a transient process system such as VMS. However, the virtual memory system could look at inherited parameters when deciding which pages to swap.
The problem I'm seeing probably wouldn't be helped by reducing the allocation of memory for buffer caches. The behavior suggest that while I'm thinking the CPU is stealing all my pages. So when I try do something, I have to wait to get paged back in.
If there's control of memory allocation on a per zone basis, I might be able to solve this by running scrub from cron in a zone. I've never had strong enough reason to use zones, so I'm only marginally familiar w/ them. Is that possible?
If physical resources can be allocated on a per zone basis that would be strong motivation to learn more and setup a zone to manage the filesystem.
More information about the OpenIndiana-discuss