Tuesday, February 13, 2007

Java Performance Tips

Using shift operator for faster division and multiplication

Multiplications
              12 * 2     = 12 << 1
              12 * 4     = 12 << 2
              12 * 8     = 12 << 3
              12 * 16   = 12 << 4
              12 * 32   = 12 << 5
              12 * 64   = 12 << 6
              12 * 128 = 12 << 7
              12 * 256 = 12 << 8
Divisions
             12 / 2     = 12 >> 1
             12 / 4     = 12 >> 2
             12 / 8     = 12 >> 3
             12 / 16   = 12 >> 4
             12 / 32   = 12 >> 5
             12 / 64   = 12 >> 6
             12 / 128 = 12 >> 7
             12 / 256 = 12 >> 8

No comments: