NVIDIA Cg Compiler Technology to be Open Source
Jim Norton writes "This announcement from nVidia states that
their Cg compiler technology for 3D applications will be Open Source and available under a free, unrestrictive license. The ETA for this is in August and will be available here." The linked company release says it will be under "a nonrestrictive, free license," but does not give further details. BSD?
Money talks. If you like what they are doing, tell them you like it by buying one of their cards.
Will only a 'portion' of this compiler be free? Some of you may or may not know that their Linux modules require a proprietary 'binary stub'. Thus the difficulty in porting any of their stuff to other UNIXs such as FreeBSD.
Hopefully that won't be the case with this.
It's important to make the distinction here. nVidia has opensourced the parser and compiler for CG, but they control the language. Look at it this way, nvidia needs something to show off NV30 with, and CG will be the thing to do it. This is in direct competition with the opengl 2.0 and DX9 HLSLs though, and you can bet that they won't be steering CG in any directions favorable to their competition like ATI or 3DLabs. It's fine if nVidia wants to do their own thing, but realize that this cg isn't nearly as open as the "opensource" headline makes it sound.
Does that source code include a one MB file called "Module-nvkernel"? Tell me, what language was that file written in?
They're giving the program to me for free as in beer
Presumably you shelled out a fair sum of cash to buy an Nvidia card. That card will not work without drivers. I can assure you, you paid for the drivers when you bought the card.
I'm not a developer so issues about code modification isn't my concern.
Even though you might never exercise your right to modify code, it should still be a concern for you. You wouldn't be running Linux if it weren't for the ability to modify code. Developer or not, the ability to modify (and audit) code benefits almost everyone (it's debatable whether or not it benefits Nvidia more than keeping the source closed).
What happens when someone restrains a freedom that you want to exercise? Should I support those restraints because they don't effect me? Even if the ability to modify code never benefits you, that doesn't mean you should disregard other people's freedoms.
For the record, if Nvidia were to open source their driver, developers could port it to other operating systems, such as FreeBSD and AtheOS. The X11 side of their driver could be ported to other graphic systems, such as Berlin or the graphics system for AtheOS. The kernel side could be integrated and distributed with the Linux kernel. The X11 side could be integrated and distributed with XFree86. Their code could be used in research projects for new graphics systems. It is possible that Nvidia's GPU can perform operations that could accelerate other computations (perhaps image recognition, speech recognition, or some other project which the drivers were never intended for). Since Nvidia won't open the source, we may never know.