Hi List,
I already presented the nvcc support fork:
which allows to call Eigen routines from CUDA kernels. This
is also a first and necessary step if one day we want to
evaluate expressions on the GPU.
Even though this fork is still experimental I'd like to
merge it into the default branch before the merge become
impossible:
Indeed, it mainly consists in adding EIGEN_DEVICE_FUNC in
front of all functions that we consider callable from a device
kernel, i.e., all functions but the ones leading to system
calls in general (allocation, I/O). There are of course a few
more subtleties, but nothing more intrusive.
Doing the merge now will allow me to work on the
refactoring of _expression_ templates this month without loosing
all the efforts in the nvcc port.
For the 3.3 release, it will be very easy to disable this
experimental support of NVCC through a big search and replace
script.
Are there any objections? Objections could be for instance
that we don't want to see any support of NVCC in Eigen in a
foreseeable future.
Cheers,
Gael.