Does effective throughput of an instruction depend on the data it operates on?

111 views Asked by At

According to comments the answer is: yes

Alternative (equivalent) question: Does heat generation (energy) of an instruction depend on data?

Clock speeds of modern chips are often limited by the amount of heat generated by instructions and thus the ability of the environment to cool down the chip. In some cases doing integer arithmetic, one has in principle the ability to choose whether to work with binary representations containing a larger number of 1s than 0s.

Do instructions which operate on data with a larger number of 1-bits consume more energy and thus generate more heat? What actually matters are changes in the bit state, see comments.

Consider this example of OR-ing two 16 bit registers:

2 bits being set - low energy use?

   1000000000000000
OR 0000000000000001
-------------------
   1000000000000001


16 bits being set - high energy use?

   1010101010101010
OR 0101010101010101
-------------------
   1111111111111111 

Intuitively I would expect that there is a difference as typical transistors have high switching energy loss. (See Why does switching cause power dissipation? on ee.SE)

For floating point operations one can probably not make use such an effect as the binary representation of the mantissa is more or less random.

0

There are 0 answers