Undoubtedly, the most popular topic around us recently is "Energy Conservation and emission reduction". MJ has a classic lyrics in "heal the world:
If you care enough for the living
Make a little space
Make a better place...
Heal the world
As a programmer, do we have to think more about our beautiful home?
Speaking of this, some programmers laughed. We were so poor that we could not afford to buy a car. It basically belonged to "no exhaust emissions". I admit that every day we went to work by human resources to both exercise and protect the environment, all of us can be referred to as "environmental activists ".
From another perspective, can our Code contribute to "Energy Conservation and emission reduction?
The most direct tool for our programmers is computers. There are three main aspects of computer energy waste (see communications of the ACM):
(1) electricity consumption. Note: I personally feel that this consumption depends not only on hardware, but also on software.
(2) heat generated from power consumption. Note: In addition to the power consumption of servers, the central data center must also consume a large number of air conditioners. In order to offset the heat generated by servers, the air conditioners must consume more power.
(3) carbon dioxide production boosts global greenhouse effect.
How can we "save energy and reduce emissions? I have probably thought of the following points. I hope you can add more to them:
(1) reduce memory usage. Memory usage consumes power. The less memory usage, the less energy consumption.
(2) reduce frequent data operations between memory and hard disk. This kind of frequent operation will undoubtedly consume a lot of power, and the disk, CPU, and various control units will all be involved. If it is compared with memory usage, this operation will consume much more.
(3) reduce network data transmission.
(4) Merge multiple tasks, such as reading and writing disks, and merge multiple read and write disk operations into one disk rotation process, which reduces the disk's mechanical movement and saves energy.
(5) Reasonable database design, reduced data redundancy, increased reasonable indexes, established appropriate views, and rational use of stored procedures can reduce the burden on database servers and thus reduce power consumption.
(6) Make full use of obsolete devices, and use cloud computing ideas to make full use of obsolete devices, form a cloud, continue to provide services, and prolong the service life of these devices, this means that we can not purchase new equipment. It is also an indirect way to save energy by reducing the output of new equipment.
I have considered so much for the time being. Next time, I will assign such a assignment to the students to see if you have any better ideas.