MCPcopy Create free account
hub / github.com/clMathLibraries/clSPARSE / Blas2

Class Blas2

src/tests/test-blas2.cpp:45–335  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

43
44template <typename T>
45class Blas2 : public ::testing::Test
46{
47
48 using CLSE = ClSparseEnvironment;
49 using CSRE = CSREnvironment;
50
51public:
52
53
54 void SetUp()
55 {
56 clsparseInitScalar(&gAlpha);
57 clsparseInitScalar(&gBeta);
58
59 clsparseInitVector(&gX);
60 clsparseInitVector(&gY);
61
62 hAlpha = T(CSRE::alpha);
63 hBeta = T(CSRE::beta);
64
65 hX = uBLAS::vector<T>(CSRE::n_cols, 1);
66 hY = uBLAS::vector<T>(CSRE::n_rows, 2);
67
68 cl_int status;
69
70 gX.values = clCreateBuffer(CLSE::context,
71 CL_MEM_READ_ONLY | CL_MEM_COPY_HOST_PTR,
72 hX.size() * sizeof(T), hX.data().begin(),
73 &status);
74 gX.num_values = hX.size();
75 ASSERT_EQ(CL_SUCCESS, status);
76
77 gY.values = clCreateBuffer(CLSE::context,
78 CL_MEM_WRITE_ONLY | CL_MEM_COPY_HOST_PTR,
79 hY.size() * sizeof(T), hY.data().begin(),
80 &status);
81 gY.num_values = hY.size();
82 ASSERT_EQ(CL_SUCCESS, status);
83
84 gAlpha.value = clCreateBuffer(CLSE::context,
85 CL_MEM_READ_ONLY| CL_MEM_COPY_HOST_PTR,
86 sizeof(T), &hAlpha, &status);
87 ASSERT_EQ(CL_SUCCESS, status);
88
89 gBeta.value = clCreateBuffer(CLSE::context,
90 CL_MEM_READ_ONLY | CL_MEM_COPY_HOST_PTR,
91 sizeof(T), &hBeta, &status);
92 ASSERT_EQ(CL_SUCCESS, status);
93 }
94
95 void TearDown()
96 {
97 ::clReleaseMemObject(gAlpha.value);
98 ::clReleaseMemObject(gBeta.value);
99
100 ::clReleaseMemObject(gX.values);
101 ::clReleaseMemObject(gY.values);
102

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected