Hi Tomasz and Andreas,
Thanks both for the info. I've considered OpenCL, but from what I've
seen, it's not quite as mature as CUDA (slower, and more difficult to use,
though that might have changed in these past few months). I love the
principle of the open standard. I just wish CUDA could become like that.
I may also hold off until Microsoft release their GPGPU language.
The whole GPGPU thing is so new, if only I could fast forward about 10
years
when things settle down a bit!
Regards, Daniel
On Wed, 10 Nov 2010 20:55:06 -0000, Tomasz Rybak <[email protected]> wrote:
Dnia 2010-11-07, nie o godzinie 22:50 -0500, Andreas Kloeckner pisze:
[cut]
> Do you think NVidia would allow me to distribute nvcc with my program
> (which may be
> partially close-sourced for now, and could be commercial). This may
make
> PyCUDA less
> necessary (although the feature-set of PyCUDA, such as the runtime
> optimization does
> look enticing in any case). I'm prepared to pay them (and you if I
end up
> using PyCUDA)
> something, though I'm not rich yet :)
If you're concerned about compiler availability, why don't you check out
OpenCL? There, the compiler is part of the API and is guaranteed to be
available at run time, without further distribution worries and
licensing charges.
According to licence of NVIDIA CUDA toolkit:
ATTACHMENT A
Redistributable Software
In connection with Section 2.1.2 of this Agreement, the following files
may
be redistributed with software applications developed by Licensee,
including variations of these files that have version number
information
embedded in the file name.
Component Windows MacOS Linux
CUDA Runtime cudart.dll libcudart.dylib libcudart.so
libtlshook.dylib
CUDA FFT Library cufft.dll libcufft.dylib libcufft.so
CUDA BLAS Library cublas.dll libcublas.dylib libcublas.so
Those are libraries that you can distribute without any problems.
There is also "Linux clause":
2.1.3 Linux/FreeBSD Exception. Notwithstanding the foregoing terms of
Section 2.1.1, SOFTWARE designed exclusively for use on the Linux or
FreeBSD operating systems, or other operating systems derived from the
source code to these operating systems, may be copied and
redistributed,
provided that the binary files thereof are not modified in any way
(except
for unzipping of compressed files).
So if your programs is to be run only on Linux, you should be able
to distribute large parts of CUDA. But:
1. I am not a lawyer - consult one before trying it.
2. This is rather intended for distribution which want to include
NVIDIA CUDA packages in them. I am not sure how it would be looked
at by real lawyers with copyright experience.
3. It limits you to Linux/BSD.
So IMO better follow Andreas' advice and look at OpenCL - especially
as there is PyOpenCL.
Regards.
--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
_______________________________________________
PyCUDA mailing list
[email protected]
http://lists.tiker.net/listinfo/pycuda