Servers that, for example, operate websites or software
applications in the cloud, are often bunched together in clusters. This offers
a safety net if anything fails, and also a way to boost compute power for heavy
workloads. But they all suffer from power limitations via the network adapters
that connect them. Via “auto-negotiation” governed by an
IEEE standard, the connections (like
Ethernet, or the ones that connect your home computer to the web) decide upon
the maximum possible speed both adapter ends can receive and transmit data.
What my team realized – and why we filed patent #8,370,517 – was that the adapters could adjust their transfer speed according to
workload. No more wasted energy by always maxing out the adapter transmission
speed!
Today’s servers don’t always run at full power because their
workloads are rarely constant. The data from those workloads, though, gets transmitted
at full power. Our patent purports to put “knobs” on the network adapters that
can alter the data transmission and reception rate between a cluster and the
data’s destination. So, when server CPUs are in low-power mode to save energy,
the adapter will, in effect, save energy, too. And they could also adjust for
more power in the instances when more is needed.
Our design modifies the network adapter on both ends to
re-negotiate data transmission speeds based on the backlog of data that remains
to be sent. When the sending end realizes that the backlog has decreased, it
would negotiate with the receiver for a lower transmission/reception rate. When
the sending end later encounters a data backlog, it would re-negotiate for a
higher transmission/reception rate.