Skip to content
  1. Jul 20, 2015
  2. Jul 19, 2015
  3. Jul 18, 2015
  4. Jul 17, 2015
  5. Jul 16, 2015
    • Karl Rupp's avatar
      MIC: Enhanced kernel parameters for BLAS levels 1, 2, 3. · d2ef9b25
      Karl Rupp authored
      Parameters not obtained from a full-fledged optimizer run,
      but from careful manual tweaking. Obtained memory bandwidths
      for BLAS levels 1 and 2 are about 70 GB/sec, which is okay given
      that vector operations on the Xeon Phi are slow with OpenCL.
      BLAS level 3 improves very mildly, peaks at about 40 GFLOP/sec.
      
      Given that OpenCL for Xeon Phi (KNC) has limited use and that
      everybody is eager for KNL, further tuning efforts are suspended.
      
      Resolves #26.
      d2ef9b25
  6. Jul 15, 2015
  7. Jul 14, 2015
    • Karl Rupp's avatar
      Iterative: Added convenience overload for STL types. · 44878475
      Karl Rupp authored
      A library user can now call CG, BiCGStab, and GMRES directly
      with STL types (vector<map<T, U> >, vector<U>).
      Internally calculations are forwarded to the corresponding ViennaCL types.
      Requires the user to include compressed_matrix.hpp and vector.hpp before
      the respective solver implementation. This is not great, but the
      best we can reasonably provide at this point.
      
      Resolves #12.
      44878475
    • Karl Rupp's avatar
      size()/size1(): Fixed declaration order. · 2a3a0606
      Karl Rupp authored
      size() now makes use of size1(), but was declared before size1().
      Inverting the order fixes compilation problems with GCC 4.8 and Clang 3.3.
      2a3a0606
  8. Jul 13, 2015
    • Karl Rupp's avatar
      Lanczos: Removed Boost dependency by replacing random number generator. · 16a44bdf
      Karl Rupp authored
      Simple random number generators now available in viennacl::tools:
       - uniform in closed interval [0, 1]
       - normally distributed
      Both implementations based on rand(), hence not thread-safe.
      However, they suffice for the time being.
      16a44bdf
    • Karl Rupp's avatar
      Lanczos: Improved structure of tutorial. · 922432e0
      Karl Rupp authored
      Now demonstrating how to compute only eigenvalues and how to also
      include eigenvectors.
      922432e0
    • Karl Rupp's avatar
      Tutorials: Added matrix-free use of iterative solvers. · bb970f32
      Karl Rupp authored
      Example works for all three backends.
      Required a couple of internal reorganizations of prod(), handle(), and size().
      Interface requirement for user-provided operators:
       - member function apply(x, y); to compute y = A * x;
       - member function size1(); to return the length of y.
      The second interface requirement is technical, but will be needed
      for matrix-free applications of rectangular matrices later.
      
      Resolves #74.
      bb970f32
    • Karl Rupp's avatar
      BiCGStab, GMRES: Rearranged residual calculation to remove temporaries. · c6597025
      Karl Rupp authored
      The use of y -= prod(A, x) is troublesome for matrix-free applications,
      hence the residual calculation
       residual = rhs;
       residual -= prod(A, current_guess);
      was modified to
       residual = prod(A, current_guess);
       residual = rhs - residual;
      to circumvent the problem.
      As an extra benefit, this also improves performance since our current
      implementation of y -= prod(A, x) for sparse matrices A relies
      on a temporary for prod(A, x).
      c6597025
  9. Jul 10, 2015
  10. Jul 09, 2015
  11. Jul 07, 2015
Loading