I had a chance to work on the Larrabee software rasterizer, and felt that the solution space for the core "picker" function was pretty well buttoned up. However, a buddy of mine (a performance guy) really wanted to implement a rasterizer. I'd always been told (while working on Larrabee) that a software texture sampler would be way too slow.<p>Over the winter, my buddy wrote a rasterizer, and I wrote a texture unit. A third friend of ours wanted to implement a threading model for an immediate mode binning rasterizer. (The OpenSWR variant of the project mistakenly refers to SWR as a tiled-rasterizer.) We combined all three projects and out popped SWR.<p>When we starting getting really good numbers, i.e., being able to play large-scale Quake III with decent numbers etc., the project sort of took on a life of its own.<p>Looking at the code (a couple of years after I left Intel), I can see they've had to scrub a lot of the implementation for release.