Please take the following message as constructive criticism, and try to make your replies the same.
I am very concerned. I think that the Open Graphics Project is on the road to nowhere. As it currently stands, it is doomed. It is doomed to irrelevance. It is doomed to produce something state-of-the-last-century. It is doomed to produce something that so few people will care about that it will pass away unnoticed. OGP has to fill a need, and it has to fill that need with something that can fit in a reasonable cost FPGA. And the need has to be worth the cost of a low volume design. Any hopes for a final ASIC based on the design are just that: hopes. If every step of the way along the path doesn't provide real benefit for someone, the project will fail. That is the way of open source projects. Whatever OGP does, it is unlikely to have volume on its side. Any design or idea that does not take that into account is doomed. We can't compete with commodity items, and we can't compete with non-commodity items that use many more gates than we have available. Even if a design made it to ASIC, it would be three process generations behind the state of the art, and implemented with far fewer gates than any potential competitor. Its OpenGL performance would most likely suck, and that will always matter at some level. It's cost/performance ratio will really suck, and that really matters. I think there is space for an open source hardware graphics card or chipset. I also think that trying to do an OpenGL implementation in the card is a terrible idea. At every level, doing anything that is anything like what is out there today is a terrible idea. We can't compete with high volume chipsets, even if our drivers and specs are fully open. We can only compete by providing something that isn't out there. It has to be _different_. Even better if it is different and simple. Complexity is a cost, not a feature. If I want an OpenGL card, I will buy a nVidia or ATI card that is reasonably well supported by an open source driver. In fact, I already have, several times. Sure, I can't play games with texture compression, or using the very latest card, but that will apply to an OGP card too. But, guess what? The Radeon 9200 (with open source drivers) in my machine will probably outmatch any OGP design, and will cost a negligible amount of money by the time any OGP design tapes out. OpenGL is more than we need. It's also less than what we need. Reality has quietly gnawed at this list, and people are now talking about doing most of the hard stuff off of the card, or doing something besides a graphics card. Great, so why are we here again? The X.org people are happily writing a next generation X server, and even if they plan to base it on OpenGL, the reality is that they will not be using most of OpenGL's capabilities. OGP would be far better off saying "You have a clean slate. Tell us what you want, exactly, and we'll implement it". OpenGL in this context is a millstone around OGP's neck. We could rather give the X people what they need, and then implement an OpenGL wrapper around that for general compatibility. The final result should implement exactly what X needs, not more or less. And, it should do so in a way that makes X designers wish the other cards out there were OGP cards. I, personally, do not want a 3D card for GUI use at all. I want a GUI that works, and works responsively, and smoothly. Ex-Amiga users will know what I mean. Everyone else has yet to experience what I am talking about. I want a fast and responsive GUI with rock solid software support and hardware that always does what the software needs. I want a mouse that always responds within a frame. I want transparent scaling, windowing and compositing in the hardware. I want sub-pixel rendering in hardware for LCD displays. I want Porter-Duff compositing. I want super smooth hardware scrolling. I want updates that are fully synchronised with the vertical blank, so that I can actually read a web page with no eye strain while it is smooth scrolling. Oh, and I want that to be low bandwidth and to require few CPU cycles. Nowhere in that description do I see "3D" or "OpenGL". 3D can kiss my ass. If we are going to provide something based on an FPGA, well, take advantage of that. Leave off the fancy ideas about standards we'll support, and just provide the software people with what they actually need. Force them to ask for what they need (rather than what they think they need), and figure out a clever way of giving it to them. Make them realise we can give them stuff they can't get from anyone else. Furthermore, as process feature sizes get smaller, it becomes harder and harder to design for them. FPGAs don't suffer from that problem, because the tiny feature sizes only impact the initial design of an FPGA cell, and every design uses many repeats of the same cell. FPGAs are getting cheaper and more powerful. Perhaps we should just count on that and use it to do things a static ASIC simply can't do? I can see the point of freezing a subset and implementing it as an ASIC, because it would make money, but if the FPGA version of OGP doesn't have a real value proposition for people, it may as well not exist. I have a constructive suggestion for what the OGP card should be, but will send it in a later email, as I do not want it to be mixed in with this discussion. Keep well, Ray _______________________________________________ Open-graphics mailing list [email protected] http://lists.duskglow.com/mailman/listinfo/open-graphics List service provided by Duskglow Consulting, LLC (www.duskglow.com)
