Hi Karl, Hi Sumit,

Thanks for the quick replies
> 
> Unfortunately, C++ template metaprogramming is not very friendly to
> exchanging library interfaces at this point, free functions would
> be a lot easier.
I know, I have looked into the interfaces and figured that there might 
be some rough edges to get around. My biggest concern are naming 
collisions which might make 1:1 replacements hard, e.g. 
ublas/shark::blas::matrix_expression vs viennacl::matrix_expression, 
which mean different things. Also, my library supports mixing of 
row/column major in expressions which is not supported by viennacl yet, 
therefore I expect some clashes there.

My current plan would be to use my expression system as frontend and map 
that to the computational kernels of viennaCL in the same way I did it 
with the ATLAS backend - just with a few more bells and whistles to 
ensure that cpu stuff only interacts with cpu stuff and gpu-stuff only 
with gpu.

this means i would use the exposed interface in e.g. 
viennacl/linalg/opencl/matrix_operations.hpp and more or less ignore the 
expression templates. Is this okay or is this somehow "unstable" or 
"might change randomly in future releases"?

Best,
Oswin

------------------------------------------------------------------------------
_______________________________________________
ViennaCL-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/viennacl-devel

Reply via email to