Published Date: 2022/08/20 by: DaVieS
![]() ![]() |
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!
|
||
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..
Big Concern: Facebook hack, Google Chrome V8 Hack, Meta Support
Many users experiences that their account leaked through Facebook Advertisement platform.The BOT change their names to Kevin Konkrete Davis and..
Maintenance
We are doing some regular maintenance at 22:00 - 02:00 UTC. Some services might be distrupted at this time. ..
FreeBSD Bhyve Webadmin | BVCP 1.9.8 Just Released
BVCP 1.9.8 features New protocol to transmit VNC/RFB data as encrypted and compressed.Better, faster and more responsive UI.Colored..
Trackit-PortGuard just released
When implemented well, this software can be considered as two-factor pre-authentication.Therefore this is one of the most secure method to..
2022 annual report
Here we go another year passed away.We very well predicted the importance of energy efficiency. In the year of 2022 we faced a lot of challenges..
A dull attempt to hack into my email from Nigeria.
Seems like this amazing African country has some hacky potential, but so much to learn.The thing why is this attempt worth a blog entry, because..