DATA-ORIENTED DESIGN The hardware will thank you.

Follow Data-oriented Design on Google+

Read articles on CellPerformance

Data-Oriented Design book - online beta


x86 architecture as an abstraction 26/03/2015:10:53:02

It has become more obvious to people involved in optimisation that the x86 architecture is a difficult platform to understand at the core. This is partially because of the multitude of different CPUs out there that support the instruction set, each with their different timings, but also because of this latest breed of extraordinarily out of order CPUs. Knowing what's actually going to happen in an i7 has become a near impossible task.

Read Robert Graham's post on x86 is a high-level language and try to see why it's so very difficult to grok the flow of data in these chips, and also how it's very difficult to guess what will be the best performing algorithm without doing a lot of real world tests.