Kickstarter For Open Source GPU
First time accepted submitter eekee writes "The targets are high, but so is the goal: releasing Verilog source code for a GPU implementation. The source will be open source, LGPL-licensed, and suitable for loading onto an FPGA. The first target is for a 2D GPU with PCI interface; perhaps not terribly interesting in itself, but the first stretch goal is much more exciting: full OpenGL and Direct3D graphics."
Unlike the Open Graphics Project, this is starting from a working 2D accelerator and mostly working 3D accelerator cloning the features of the Number Nine Ticket to Ride hardware. If they get a meelion bucks they'll overhaul the chip to support something other than PCI (although you can bridge between PCI and PCIe) and implement a modern programmable rather than fixed-function chip. Also unlike OGP, they do not appear interested in producing hardware, instead focusing entirely on the core itself for use in FPGAs (anyone want to dust off the OGD1 design?)
You sir are a cock
How is this not an Ouya in the making? Is there actually a market large enough for this thing to do anything but vanish without a trace?
Apologies for the negativity. Please do correct my world view. I'm amenable.
my cousin Jock?
A lot tougher to get right than software. In software you can implement anything you want, as badly as you want. It doesn't cost anything and it's easy to start over. So what if you have an open source GPU? How are you going to connect it to the computer? You need an above-hobbyist PCB designer (sorry, it's true), you need someone to build the boards, test them, solder on the parts (assuming you were able to make a schematic and a BOM and order the parts), test again, and then you can start debugging software as maybe hardware bugs come out at the same time.
But at least make something that can be fabbed. MIPS and ARM are doing great with implementing reference designs.
Heck, I'd *love* a Chinese factory to take an open graphics card spec and crank out $9 low-power cards for me to use in a server. PCI is fine, but it kills me to put a $50 GeForce card with a heatsink and fan in a normally headless machine!
FPGA is a great target for distributed development; just support those who want to implement it in an an ASIC.
My God, it's Full of Source!
OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
With the rise of ARM, SoC parts with fully open GPU APIs of amazing power are essentially almost ZERO cost. Tiny circuit boards are available for experimenters and developers with first class 2D, 3D, Video and JPG acceleration, and even video ENCODING is becoming a common hardware feature in low-end parts.
What exactly does the cretinous idea of 'open-source' hardware bring to the table. Sure, it's an environment for budding chip designers to cut their teeth on, but SIMULATIONS on powerful PCs actually provide this teaching resource far better. For people who simply want to USE hardware, it is of less than zero use.
ARM hardware isn't open-source- nor ANY of the hardware 99.99999% of you use on a daily basis. What exactly are you missing because of this fact?
Sure, a bunch of non-too-bright fiddlers would love free money from suckers to allow them to indulge in their pointless hobby. And worse, just about any GPU design of value is covered by insane numbers of existing patents, giving these chumps the perfect excuse when they fail to provide ANYTHING to their investors. And I don't mean because the big boys will actually threaten them- simply that this is a project with "meant to fail" written through it like a stick of seaside rock.
Competition in the GPU market means that GPU cores (tried, tested and licensable) have never been cheaper or more varied in options. People who write open-source software most certainly do NOT want to be targeting some joke open-source hardware, as if this is some cretinous doctrine of a religious organisation. What all software developers need is well supported, well documented hardware that is bug free and widely used. Those that see the open-source movement as a church are mentally ill.
If this succeeds its ultimate product will be the ability to make an expensive and slow GPU using a FPGA? One that almost certainly won't be good enough to run most games? Who is clamoring for this? If they were manufacturing their own chips instead of using FPGAs then I could see it maybe as something for a Raspberry Pi like device, but that's right out the window when you're talking about $300 FPGA chips.
I read the internet for the articles.
Now that is cool. Sounds like the right approach to me, at least. Not least because it isn't merely a working 2D implementation, but the product of an academic survey-and-implementation exercise, that had some seriously nice features. I'm mostly missing OpenCL and GPGPU as stretch goals. But even if those never happen, this might be a viable option for a Raspberry Pi C model, to get over the problems with the broadcom blob needed for the A and B.
Sun released the (IIRC) VHDL code for their UltraSPARC cores used in the T1 and the T2 multicore CPUs.
I've been out of the FPGA world for a while, but I would expect anything interesting in terms of a 3D chip to require a largeish FPGA chip, and if you have to use a $200-$2000 FPGA (with exotic surface-mount and power requirements) then this seems like maybe not that much of a win.
G.
The fact that commodity hardware is unreasonably hard to run headless is a long-standing problem in peecee land, one unfortunately left entirely unadressed with UEFI. And no, even IPMI is simply not good enough.
Though if you happen to be lucky enough to have hardware supported by coreboot, you can put OpenBOOT on it, and see if you can't make it boot off of serial only. Plenty OSes support that fine, it's just the BIOS/UEFI part that can't cope.
Now all we need is a cheap ($20 or so) box you can bolt onto a monitor, with ps/2 keyboard (and possibly mouse), vga out, and at least one serial port, turning a monitor into a good old fashioned terminal. The fancier model can perhaps double as an X display server (with added ethernet). While at it, make me a 3 button (no wheel) optical mouse. Just the old m-s35 model is fine, with an optical back end, thanks.
That kind of shit should be stripped out by "editors." No slang, please.
For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
Open reference designs are invaluable.. they allow integration of this into an existing design or SoC, but more interestingly, provide an easy platform to customize at the hardware level.
..don't panic
This is so ridiculous I don't even know where to start. Whoever is promoting this has no idea what is involved.
If you want to learn, buy a Xilinx demo board with a VGA or HDMI connector. You can learn something from it, and begin to see what a huge amount of work something like this requires.
Leave your high-minded ideas for open source (or free money from Kickstarter) and get a vague of idea of what you are proposing. The costs to fab anything are enormous. A $35 PCI-Express video card with no fan is a much better bargain.
I would prefer OpenCL-only chip, for massively parallel computations. I would like some really simple CPU, like MC68000 + vector FPU, with some 128KB of private memory for each core, with thousands of cores, working on 3GHz or more. It would be even better, if cores are setup in 2D grid, so that each core can access private memory of neighbouring 4 cores.
I believe the submitter is in error here - these guys are actual engineers that used to work for #9 graphics, and the IP core they are proposing to open-source is indeed the actual (updated, cleaned up and commented - see thread on phoronix) Verilog source code for the 'Ticket to Ride 4' graphics core, which was used in the final product that #9 put out in 1998 - the Revolution IV.
As far as I know, the original card was quite fast - about the same level as a Matrox G200 or Riva TnT. It would support 1920x1080 at around 70-80 Hz. Given a modern-day realization with what, 20 times smaller feature size (gotta love Moore's law), they can probably clock it at vastly higher speeds within the same miserly power envelope!
The $200,000 goal is ludicrous. They will be very lucky to collect even 10% of that goal.
Yes/Yes/Yes
Designing a GPU is much easier than desiginging a GPU which doesn't violate any of the massive number of GPU patents. For a while, it seemed like 'doing something a CPU does but on a GPU' was the patent equivalent of 'doing something computers have been doing for years, but on a phone'.
Software drivers are a challenge, and we will work on providing some level of drivers, with the hopes that the community takes them up and pushes them to new levels and provides problem reports to us.
I assume the #9 is not nearly as complex as a modern-day GPU, but this sentence really concerns me. As a hardware guy myself, I'd want some more experienced hands on board for the software side. And a Linux driver needs to be part of the deliverables at least.
Also, what's the resource utilization? If this thing only runs in large Virtex-class chips then it's not terribly useful to the open-source community.
It would be really cool to have a graphics core of this level open-sourced, but I think the audience for this project is kind of small. You could build yourself a PCI graphics card for kicks, I guess, but you'd still need a PCI motherboard. Where it gets more interesting is with the "generic interface" option. Then for example you could use a Xilinx Zynq (which is an FPGA+ARM), implement the GPU in the FPGA, and talk to it on-chip over AXI. However I have a feeling they won't get to the $600000 level needed to make this possible.
I remember having a Number(N)ine card back in the day (an Intergraph card?). It was a little obscure but came with the territory (I think that was the card I paired with a Gravis Ultrasound, as well). Good to see someone using that tech again.
If you were me, you'd be good lookin'. - six string samurai
They aren't exactly asking for pocket-change here. They want fairly extensive funding in order to produce a product that will be utterly worthless in the marketplace... (running a GPU on an FPGA isn't exactly going to be at the upper-right of the price/perf graph.) It'd be nice if the top contributors at least got a copy of a reference design, not just a USB stick with source on it.
It's nice that it will be "open", but I kind of think they'll have trouble getting funding for a "hobby" project that few, if any, of the backers will even be able to use. (And even if they could, would they want to?) This would be like contributing money to a new car company so they could design (but not actually build) a hand-built, but otherwise generic, mid-size sedan, but with a riding lawnmower engine in it instead a car engine. Yeah, the whole world will get a copy of the blueprints, but why would anyone ever want to build it?
No, it's obviously your coock. 3 out of 4 hints agree.
It takes 10-100M$ to create a competitive GPU. And that's only if you've got a great team (see how many times Nvidia and AMD have messed up) and have access to the critical patents. This is an absurd idea.
Since the Zynq's FPGA is a good match for a GPU project, how about implementing the entire open design on the Parallella board?
In addition to the FPGA, Parallella gives you a very powerful 16-core floating point accelerator in the Epiphany device, so most of the shader work can be done in the Epiphany cores leaving only the most time-critical parts to the FPGA. Needless to say, Epiphany already has the hardware parallelism required for shaders, at least 16 of them, and 64 in the larger board. At most this approach would require a small external PC board carrying the graphics sockets, connected to the Parallella's I/O headers with a short cable.
Refining the shader code on Epiphany would be VASTLY easier than refining the Verilog on the FPGA, by orders of magnitude, and the number of people able to help would be comparatively vast.
I have high hopes for this in the event it gets funded. Not when it immediately comes out, but an open GPU hardware specification would allow smaller manufacturers to enter that field, allow easier integration on other chips, improve low-level access, and make for more bug-free drivers. The sooner something like this occurs, the better.
It's funny, but it seems their development model isn't really open source, they just plan to release the source when they're done.
Mind you, I'm not saying they're lying. They never stated their development model was open source.
What's the big difference?
An open source development model means the source is open from day 0, both for contributions, testing, etc, etc, etc.
This is actually a closed development (ie: behind closed doors), which later gets published.
The quality of the end result of both development models varies greatly.
This is from Silicon Spectrum, who bought the graphics accelerator from Number Nine (i128, Ticket-to-Ride, etc.). It appears they've deviced to open source that IP. The i128 was mostly 2D with some very limited 3D support. I don't know if they managed to develop anything with programmable shaders, but they might have. Also, I think they've been selling graphics accelerator IP for FPGAs for a while; not sure.
Let me translate the list of "features" to human language:
>>2D accelerator supporting lines, solid fills, patterned fills and bit BLTs.
Pay us $200k for dumb VGA with an "accelerator" which will be never by utilized by software like Qt or Gtk.
>>Out current design has a PCI bus interface heavily integrated into the design
We have a pile of HDL crap and we call this pile "integration". Pay us $200k more to fix this pile.
>>The design has been optimized for current technologies
We have no idea about software demangs. However, pay us $200k more.
>>Unified shader... This is our ultimate stretch goal and requires a complete redesign.
Pay us 200$k more so we will start actually implementing a GPU
>>It's something we have been wanting to do for years, but didn't have the resources
we have no brain
1M$ - for what? I really don't understand
From here on out AMD's GCN architecture is the standard. All 3 next-gen consoles have it, PCs have it, AMD APUs have it, Mantle unifies them all. GCN is fully programmable, not much evolution needs to take place with the design at this point. It's very mature.
Every FPGA on the market is a closed blackbox that you have to use closed blackbox vendor software to generate closed blackbox bitcode files to load through closed blackbox JTAG extensions.
It would be great if some non-profit, community or university team did some layout and developed a reference standard for FPGAs that had a documented internal layout, documented bitcode and had opensource tools so we can finally move forward and have operating systems with dynamically configurable (timesharing) FPGA logic functionality.
In HPC and finance, all sorts of cool things are being done with FPGAs, but the tools continue to suck. We're not going to see a shift to general purpose FPGA computing until the workflow for programming them is improved, and it's not going to improve until the devices and their configuration chain are de-obfuscated. If that happens, we are going to see an explosion in cool GPFPGA applications.