Accelerating Your Algorithms: Considerations in Design, Algorithm Choice and Implementation
Accelerating Your Algorithms

The pursuit of speed is one of the few constants in computing, and it is driven by two things: ever-increasing amounts of data, and limited hardware resources. Today in the era of Big Data and the Internet of Things we are getting pinched in both directions. Fortunately we are getting much better at distributed and parallel computing, but the need for raw speed at the algorithmic level is never going to go away. If we can make our algorithms inherently faster we will get more out of our expensive hardware, and that is always going to be a good thing.