Dear ViennaCL users,

ViennaCL 1.5.0 is finally out and available for download at
    http://viennacl.sourceforge.net/
It introduces a couple of new convenience routines, performance 
improvements, and higher code quality. Most important changes from the 
changelogs:

  - Vectors and matrices can be instantiated with integer template types 
(long, int, short, char).

  - Added support for element_prod() and element_div() for dense matrices.

  - Added element_pow() for vectors and matrices.

  - Added norm_frobenius() for computing the Frobenius norm of dense 
matrices.

  - Added unary element-wise operations for vectors and dense matrices: 
element_sin(), element_sqrt(), etc.

  - Multiple OpenCL contexts can now be used in a multi-threaded setting 
(one thread per context).

  - Multiple inner products with a common vector can now be computed 
efficiently via e.g.~inner_prod(x, tie(y, z));

  - Added support for prod(A, B), where A is a sparse matrix type and B 
is a dense matrix (thanks to Albert Zaharovits for providing parts of 
the implementation).

  - Added diag() function for extracting the diagonal of a vector to a 
matrix, or for generating a square matrix from a vector with the vector 
elements on a diagonal (similar to MATLAB).

  - Added row() and column() functions for extracting a certain row or 
column of a matrix to a vector.

  - Certain BLAS functionality in ViennaCL is now also available through 
a shared library (libviennacl).

  - API-change: User-provided OpenCL kernels extract their kernels 
automatically. A call to add_kernel() is now obsolete, hence the 
function was removed.

  - API-change: Device class has been extend and supports all 
informations defined in the OpenCL 1.1 standard through member 
functions. Duplicate compute_units() and max_work_group_size() have been 
removed (thanks for Shantanu Agarwal for the input).

  - API-change: viennacl::copy() from a ViennaCL object to an object of 
non-ViennaCL type no longer tries to resize the object accordingly. An 
assertion is thrown if the sizes are incorrect in order to provide a 
consistent behavior across many different types.

  - Datastructure change: Vectors and matrices are now padded with zeros 
by default, resulting in higher performance particularly for matrix 
operations. This padding needs to be taken into account when using 
fast_copy(), particularly for matrices.

The full change logs can be found  at
  http://viennacl.sourceforge.net/changelog.txt

Thanks to all contributors :-)

Best regards and best wishes for 2014,
Karl Rupp

------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
ViennaCL-devel mailing list
ViennaCL-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/viennacl-devel

Reply via email to