[Mesa-dev] Mesa/Gallium overall design

Corbin Simpson mostawesomedude at gmail.com
Tue Apr 13 11:38:49 PDT 2010


[snip'd]

Two observations:

1) I wrote most of a Gallium driver. By myself. It took OVER 9000
lines of code, but it happened. I'd say that an interface that permits
one mediocre coder armed with docs to craft a working, simple driver
in a couple months (effectively three man-months, by my estimate) is a
roaring success.

2) I worked by myself. Except for occasional patches from the
community (Marek, Joakim, Nicolai) and lately from Dave, the initial
bringup was something I had to do by myself, without assistance.

So what I'm seeing here is a chicken-and-egg problem where Gallium has
no drivers because nobody wants to write drivers for it because its
interface is unproven because it has no drivers... Now that we're
actually having real drivers for real hardware reaching production
quality, I think we can break this cycle and get people to start
contributing to Gallium, or at least bump down to the next level of
reasons why they won't write Gallium code. :3

Not that I'm saying excuses are bad or wrong, but in the end, r300g is
14.7klocs and r300c is 26.9klocs (and yes, I didn't count the shared
shader compiler code), so the goal of "Bring up drivers in less time,
with less code," appears to be achieved. We are almost reaching r300c
performance levels, and beating it handily in certain benchmarks, so
it is possible to write good new drivers on this codebase.

~ C.

-- 
When the facts change, I change my mind. What do you do, sir? ~ Keynes

Corbin Simpson
<MostAwesomeDude at gmail.com>


More information about the mesa-dev mailing list