OSEC

Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com
 
From: Ben Goren (bentrumpetpower.com)
Date: Mon Jul 01 2002 - 22:11:29 CDT

  • Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

    On Mon, Jul 01, 2002 at 06:52:07PM -0700, bsd user wrote:

    > Hi all --
    >
    > What options are available for conserving power consumption for
    > a internet server that's up & running 24/7, but which is
    > probably idle 90% - 99% of the time (waiting for SMTP emails,
    > dns requests, user interaction, etc.)?

    The one thing missing from your note is the answer to the obvious
    question: ``Why?'' There's lots of good reasons why you'd want to
    do this, but just how aggressive to get and what path to take
    depends on the what you want to accomplish.

    If you haven't yet bought the hardware, the absolute best thing
    you can do is pick hardware with low power requirements. Efficient
    hardware will do more than anything you could do with such a
    server.

    Also consider buying an old computer. Many less (computationally-)
    powerful computers are also less (energetically-) powerful.

    If you do have hardware, keep it. Whatever power savings you might
    get by buying something new would be dwarfed by the energy used in
    the manufacturing process (think mining of precious metals) and
    would be a terrible waste to a landfill.

    (If this is for an embedded environment--say, a solar-powered
    remote station, the preceeding paragraph may be irrelevant.)

    If your BIOS supports it, underclock the CPU (and, if you're
    daring, various busses) to the slowest tolerable setting. With
    sufficiently aggressive underclocking, you may well eliminate the
    need for the CPU fan and maybe a case fan or two. The underclocked
    CPU will, itself, consume less energy.

    Many hard drives have different features to control noise
    production, power consumption, and the like. For IBM drives,
    you can download a floppy boot disk (i386) to perform
    configurations. See the documentation or contact the vendor for
    details.

    Most modern hard drives can be put into various low-power standby
    (etc.) modes. You can use atactl (8) to put them into such a
    mode. Note, however, that Unix assumes that disks are always
    available. It's not unusual to spin down a drive only to have it
    spin up again a few seconds later. The spin up/down cycle consumes
    a *lot* more energy than just letting it spin.

    Put as much RAM in the computer as is physically possible. At the
    bottom end, RAM is approaching $0.10 / Mbyte. A lot of people have
    had bad luck with the cheap stuff, but you can probably get 2
    Gbytes of quality RAM for $500 (remember when you couldn't
    even dream of a 2 Gbyte hard drive, let alone get one for
    $500?). Depending on the nature of the data you're sending and
    recieving, you may well be able to put everything onto a memory
    filesystem, and spin down the hard drive as soon as everything
    gets loaded into RAM.

    If you're debating between two comparable programs--MTAs, for
    example--give additional weight to the one with the smaller memory
    footprint. If a small, simple program will do the job, it'll leave
    more RAM free for other things and put off hard disk access that
    much longer.

    Remove any periphials you can live without. This probably means
    floppy drive, CD-ROM, sound card, etc.

    Here's a *big* one: get rid of the monitor. The video card, too,
    if your computer will boot without it. If you need a monitor, get
    the smallest one possible. LCD screens have an edge. Turn it off
    (don't just rely on DPMS) except for when you're standing in front
    of it.

    Everything that you can do in the way of performance tuning will
    reduce the load on the commputer which will, in turn, mean less
    work for the CPU and other components and--hey presto!--less
    energy consumed. Search the archives for anything lengthy written
    by Henning Brauer for starters. Also read:

        http://www.trumpetpower.com/OpenBSD/Meta-FAQ#general_performance

    Your ideas of hacking the kernel to introduce wait states and the
    like fall into one of two categories: it's already done, or have
    fun but expect to be on your own for the most part. See:

        http://www.trumpetpower.com/OpenBSD/Meta-FAQ#custom

    for details.

    And, finally, consider if it really needs to be on 24/7. If it's a
    company server, you're probably safe shutting it down late evening
    and restarting it (many BIOSes have wake-at-time-of-day features)
    early in the morning. Mail servers will queue mail for retry if
    they can't connect right away. Your other DNS server for the zone
    is on a different network segment, no? Shut down one one night and
    the other the next. If it's an intranet Web server, nobody'll be
    reading Web pages on it at three in the morning. If need be, you
    could always do wake-on-lan or wake-on-ring to remotely boot it in
    the middle of the night.

    Good luck, and do be sure to let us know what finally works for
    you!

    Cheers,

    b&

    --
    Ben Goren
     mailto:bentrumpetpower.com
     http://www.trumpetpower.com/
     icbm:33o25'37"N_111o57'32"W
    

    [demime 0.98d removed an attachment of type application/pgp-signature]