Energy Saving

Published Date: 2022/08/20 by: DaVieS

Energy Saving
Energy Saving

We have been busy since expanding our services worldwide meanwhile in other hand helping reduce CO emission in industrial-scale levels. 

We backing up into our core projects to improve its efficiency and using more low-level APIs such as kqueue, epoll and _ASM calls. These changes are seems a little until we flush it to hundreds of servers.

The current (high) energy prices are a good alarm to help and protect environment by doing some easy tasks.
We already started mass energy saving years before without a reason and the current situation is absolutely not risking our services, we operating at full power with a minimal electricity costs.

How to save power on servers?
The common sense is turn off the lights and turn off devices. - Well done.
There is no option to turn off servers. So what now?


1) Upgrade the war machine


Newer architectures are consuming less energy or have better energy/performance ratio.
There are many better CPUs in the used market (I bet) which is fit into the motherboard, at voilà. 

 

2) Do you really need 512GB of RAM?
Unused RAM modules installed on server is luxury now.

 

 

 



3) Power Saver
Enable Intel SpeedStep or similar, you wont notice anything but that allows the OS to manage power settings.
These are commonly disabled on server OS, because the thing is server should be fast, but this is not equal with we should keep it 100% even its Idling.

FreeBSD has a nice utility to done, POWERD(8). --------->

We are using the config below without performance loss.

powerd_enable="YES"
powerd_flags="-a hiadaptive"

 

4) Tune and Fine Tune

Most Operating Systems comes with default config. Unfortunately 90% of servers are running on default settings, and 99.9% of servers are still have potential for fine-tune.

mySQL, amavisd, amavisd-new, spamassasin, etc...  should be tuned! 

These are the most resource and energy hungry processes on servers and basically running on default settings.


5)  System Tunables

sysctl is a power utility to adjust realtime buffers.
More buffers means less CPU cycles that means less energy used, but too much buffers increasing page moves which could be worse.

Since every OS and Server roles are different there is no common recommendations, experiment is a key.

POWERD(8)               FreeBSD System Manager's Manual              POWERD(8)
NAME
     powerd – system power control utility
SYNOPSIS
     powerd [-a mode] [-b mode] [-i percent] [-M freq] [-m freq] [-N]
            [-n mode] [-P pidfile] [-p ival] [-r percent] [-s source] [-v]
DESCRIPTION
     The powerd utility monitors the system state and sets various power
     control options accordingly.  It offers power-saving modes that can be
     individually selected for operation on AC power or batteries.
     maximum     Choose the highest performance values.  May be abbreviated as
                 max.
     minimum     Choose the lowest performance values to get the most power
                 savings.  May be abbreviated as min.
     adaptive    Attempt to strike a balance by degrading performance when the
                 system appears idle and increasing it when the system is
                 busy.  It offers a good balance between a small performance
                 loss for greatly increased power savings.  May be abbreviated
                 as adp.
     hiadaptive  Like adaptive mode, but tuned for systems where performance
                 and interactivity are more important than power consumption.
                 It increases frequency faster, reduces frequency less
                 aggressively, and will maintain full frequency for longer.
                 May be abbreviated as hadp.
     The default mode is adaptive for battery power and hiadaptive for the
     rest.
     powerd recognizes these runtime options:
     -a mode     Selects the mode to use while on AC power.
     -b mode     Selects the mode to use while on battery power.
     -i percent  Specifies the CPU load percent level when adaptive mode
                 should begin to degrade performance to save power.  The
                 default is 50% or lower.
     -M freq     Specifies the maximum frequency to throttle up to.
     -m freq     Specifies the minimum frequency to throttle down to.
     -N          Treat "nice" time as idle for the purpose of load
                 calculation; i.e., do not increase the CPU frequency if the
                 CPU is only busy with "nice" processes.
     -n mode     Selects the mode to use normally when the AC line state is
                 unknown.
     -P pidfile  Specifies an alternative file in which the process ID should
                 be stored.
     -p ival     Specifies a different polling interval (in milliseconds) for
                 AC line state and system idle levels.  The default is 250 ms.



If you like the article then don't forget to share!


Is Rust better than C/C++ ?

Rust is relatively new programming language which offers full memory management and garbage collection, while C/C++ already has a decent history..


Network Update

Proudly announcing that in the past days we expanded our infrastructure and our services will become more stable and quickier at us west, us..


Windows 10/11 Disable Search and annoyings on start menu

The one of the most irritative feature on windows is a "new" start menu which sends every input into Microsoft related services. Also if you have..


BVCP 2.0.x Released

Our one of the most popular FREE-TO-USE Software BVCP reached the next milestone.Big thanks to the active community, a ton of feedbacks received..


Welcome 2024

We have been busy at 2023. Im personally very happy to see a lot of new technologies especially EV related researches.We continued to support our..


FreeBSD 14 fresh install breaks mc (Midnight Commander) subshell support

We are very happy to announce that - if you did not know already - one of the best Operating System released a new version. FreeBSD 14. This..


ZFS Replication Software

  While we are working on BVCP 2.0 just another software made to handle ZFS Replications over multiple nodes. The software yet not released..


Bhyve UEFI drops into EFI shell, Linux wont boot Easy Workaround

  EFI works that way that the installer places a file into a FAT32 partition in a regular directory as called "BOOT". The usual full path of..


Nexus Datalogger 2023

We're proudly present that we released out our next version of datalogger software as commerical product. Our first version of Datalogger..

All rights reserved nPulse.net 2009 - 2024
Powered by: MVCP2 / BVCP / ASPF-MILTER / PHP 8.3 / NGINX / FreeBSD