ViennaCL - The Vienna Computing Library  1.7.1
Free open-source GPU-accelerated linear algebra and solver library.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
vector_multi_inner_prod.cpp File Reference
#include <iostream>
#include <iomanip>
#include <iterator>
#include "viennacl/vector.hpp"
#include "viennacl/vector_proxy.hpp"
#include "viennacl/linalg/inner_prod.hpp"
#include "viennacl/linalg/norm_1.hpp"
#include "viennacl/linalg/norm_2.hpp"
#include "viennacl/linalg/norm_inf.hpp"
#include "viennacl/tools/random.hpp"

Go to the source code of this file.

Functions

template<typename ScalarType >
ScalarType diff (ScalarType const &s1, ScalarType const &s2)
 
template<typename ScalarType >
ScalarType diff (ScalarType const &s1, viennacl::scalar< ScalarType > const &s2)
 
template<typename ScalarType >
ScalarType diff (ScalarType const &s1, viennacl::entry_proxy< ScalarType > const &s2)
 
template<typename ScalarType , typename ViennaCLVectorType >
ScalarType diff (std::vector< ScalarType > const &v1, ViennaCLVectorType const &vcl_vec)
 
template<typename T1 , typename T2 >
int check (T1 const &t1, T2 const &t2, double epsilon)
 
template<typename NumericT , typename Epsilon , typename STLVectorType1 , typename STLVectorType2 , typename STLVectorType3 , typename STLVectorType4 , typename ViennaCLVectorType1 , typename ViennaCLVectorType2 , typename ViennaCLVectorType3 , typename ViennaCLVectorType4 >
int test (Epsilon const &epsilon, STLVectorType1 &std_v1, STLVectorType2 &std_v2, STLVectorType3 &std_v3, STLVectorType4 &std_v4, ViennaCLVectorType1 &vcl_v1, ViennaCLVectorType2 &vcl_v2, ViennaCLVectorType3 &vcl_v3, ViennaCLVectorType4 &vcl_v4)
 
template<typename NumericT , typename Epsilon >
int test (Epsilon const &epsilon)
 
int main ()
 

Detailed Description

Tests the performance of multiple inner products with a common vector.

Test:
Tests the performance of multiple inner products with a common vector.

Definition in file vector_multi_inner_prod.cpp.

Function Documentation

template<typename T1 , typename T2 >
int check ( T1 const &  t1,
T2 const &  t2,
double  epsilon 
)

Definition at line 103 of file vector_multi_inner_prod.cpp.

template<typename ScalarType >
ScalarType diff ( ScalarType const &  s1,
ScalarType const &  s2 
)

Definition at line 46 of file vector_multi_inner_prod.cpp.

template<typename ScalarType >
ScalarType diff ( ScalarType const &  s1,
viennacl::scalar< ScalarType > const &  s2 
)

Definition at line 57 of file vector_multi_inner_prod.cpp.

template<typename ScalarType >
ScalarType diff ( ScalarType const &  s1,
viennacl::entry_proxy< ScalarType > const &  s2 
)

Definition at line 68 of file vector_multi_inner_prod.cpp.

template<typename ScalarType , typename ViennaCLVectorType >
ScalarType diff ( std::vector< ScalarType > const &  v1,
ViennaCLVectorType const &  vcl_vec 
)

Definition at line 79 of file vector_multi_inner_prod.cpp.

int main ( )

Definition at line 508 of file vector_multi_inner_prod.cpp.

template<typename NumericT , typename Epsilon , typename STLVectorType1 , typename STLVectorType2 , typename STLVectorType3 , typename STLVectorType4 , typename ViennaCLVectorType1 , typename ViennaCLVectorType2 , typename ViennaCLVectorType3 , typename ViennaCLVectorType4 >
int test ( Epsilon const &  epsilon,
STLVectorType1 &  std_v1,
STLVectorType2 &  std_v2,
STLVectorType3 &  std_v3,
STLVectorType4 &  std_v4,
ViennaCLVectorType1 &  vcl_v1,
ViennaCLVectorType2 &  vcl_v2,
ViennaCLVectorType3 &  vcl_v3,
ViennaCLVectorType4 &  vcl_v4 
)

Definition at line 123 of file vector_multi_inner_prod.cpp.

template<typename NumericT , typename Epsilon >
int test ( Epsilon const &  epsilon)

Definition at line 315 of file vector_multi_inner_prod.cpp.