Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Jul 2002 13:47:47 -0700 (PDT)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        "Ken Menzel" <kenm@icarz.com>
Cc:        "Hartmann, O." <ohartman@klima.physik.uni-mainz.de>, <freebsd-stable@FreeBSD.ORG>
Subject:   Re: tuning(7) request was: Re: Performance boost with kernel options in FBSD 4.6
Message-ID:  <200207112047.g6BKllXX097458@apollo.backplane.com>
References:  <20020710104730.L10343-100000@klima.physik.uni-mainz.de> <04a601c228dc$c6dbb980$681663cf@icarz.com> <200207111930.g6BJUX5m096974@apollo.backplane.com> <064901c22919$9738d2c0$681663cf@icarz.com>

next in thread | previous in thread | raw e-mail | index | archive | help
    Well, the main thing you need to figure out is whether your problem
    is due to cpu monopolization or disk monopolization.  'I/O' load itself
    can effect the scheduler, but is unlikely to overload the machine.  Disk
    loads are far more likely to overload the physical hard drives.

    For example, if you have a user logged into a shell whos 30MB mailbox is
    on the same hard drive as, say, a heavily loaded MySQL database which is
    saturating the drive, simply reading the mailbox sequentially could take
    10 seconds when it would only take 1 second on an idle drive.

    So the first thing you need to do is determine your drive loads and
    map out where the different applications/users are going.
    'systat -vm 1' helps a lot there because it tells you the hard drive
    % utilization.  The thing about Databases and Web serving is that
    they can generate a lot of seeking on a drive which can easily saturate
    the drive (100% utilization).

    If you determine that drive load is your problem then the logical
    solution is to add more drives or distribute the partitions differently
    or add memory (increased caching == reduced disk I/O) or add more 
    hard drives.  If you determine that cpu monopolization is the problem and
    drive load is not the problem then you can try things like raising HZ,
    renicing processes a little (I recommend no more then +/- 8), reducing
    the parallelism on some of the server processes, upgrading the cpus,
    and so forth.  There are lots of potential solutions.

						-Matt

:Hi Matt,
:   Regarding your comment about highly IO intensive programs;  many of
:us run SQL databases (highly intensive IO).  I have noticed a tendency
:for a single process to monopolize the CPU with MySQL, to the
:exclusion of other users.  I do understand the detrimental effects of
:state changes on a CPU, so I can relate to not setting this value too
:high.  I wonder if we might see an effect with this as well?
:
:I don't remember seeing this discussed here.   I do not mean to bring
:up a topic that has been discussed before, either here or another
:list.  However, the effect on IO for a server with several hundred
:simultaneous connections could be noticeable.  I am not sure a simple
:benchmark would should any advantage, although I am planning to play
:with the value and run some benchmarks.  If I come up with meaningful
:numbers I will post them.
:
:The main thing I was wondering is what effects I might watch for, and
:any hints as to what I should not waste my time on.  In our
:environment we run FreeBSD,Apache,PHP, MySQL for about a thousand
:users. It is an interactive database application so this may have
:similarities to the X situation you described. I am always looking to
:boost performance (can't wait to see 5.0! ).  I am just not sure what
:kind of an effect I might see.  But I will play around as soon as I
:return from vacation (unless someone else gets to it  first! :).  All
:the security problems lately have really kept me busy.
:
:Thanks for the input,
:Ken

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200207112047.g6BKllXX097458>