kernel routine, oski_MatTransMatMult(), for an arbitrary data structure transformation (specified by a OSKI-Lua program), where the matrix is read from a Harwell-Boeing file.
More...
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
#include <oski/common.h>
#include <oski/matrix.h>
#include <oski/matcreate.h>
#include <oski/tune.h>
#include "abort_prog.h"
#include "readhbpat.h"
#include "testvec.h"
Functions | |
| static int | TestInstance (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, oski_ataop_t opA, oski_index_t num_vecs, oski_value_t alpha, const oski_vecview_t x, oski_value_t beta, oski_vecview_t y0, oski_vecview_t t0, int test_num, size_t max_tests, int min_test, int max_test) |
| static int | TestT (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, oski_ataop_t opA, oski_index_t num_vecs, oski_value_t alpha, const oski_vecview_t x, oski_value_t beta, oski_vecview_t y0, int test_num, size_t max_tests, int min_test, int max_test) |
| static int | TestY (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, oski_ataop_t opA, oski_index_t num_vecs, oski_value_t alpha, const oski_vecview_t x, oski_value_t beta, int test_num, size_t max_tests, int min_test, int max_test) |
| static int | TestBeta (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, oski_ataop_t opA, oski_index_t num_vecs, oski_value_t alpha, const oski_vecview_t x, int test_num, size_t max_tests, int min_test, int max_test) |
| static int | TestX (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, oski_ataop_t opA, oski_index_t num_vecs, oski_value_t alpha, int test_num, size_t max_tests, int min_test, int max_test) |
| static int | TestAlpha (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, oski_ataop_t opA, oski_index_t num_vecs, int test_num, size_t max_tests, int min_test, int max_test) |
| static int | TestNumVecs (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, oski_ataop_t opA, int test_num, size_t max_tests, int min_test, int max_test) |
| static int | TestOpA (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, int test_num, size_t max_tests, int min_test, int max_test) |
| static void | check_MatTransMatMult (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, int min_test, int max_test) |
| int | main (int argc, char *argv[]) |
Parameter test lists. | |
| #define | NUM_OP 4 |
| #define | NUM_NUM_VECS 2 |
| #define | NUM_ALPHA 3 |
| #define | NUM_BETA 3 |
| #define | NUM_USE_MINSTRIDE 2 |
| #define | NUM_ORIENT 2 |
| static const oski_ataop_t | TL_op [NUM_OP] |
| static const oski_index_t | TL_num_vecs [NUM_NUM_VECS] = { 1, 3 } |
| static const oski_value_t | TL_alpha [NUM_ALPHA] |
| static const oski_value_t | TL_beta [NUM_BETA] |
| static const int | TL_use_minstride [NUM_USE_MINSTRIDE] = { 0, 1 } |
| static const oski_storage_t | TL_orient [NUM_ORIENT] |
kernel routine, oski_MatTransMatMult(), for an arbitrary data structure transformation (specified by a OSKI-Lua program), where the matrix is read from a Harwell-Boeing file.
Like hbmatmult.c, also implicitly tests oski_ApplyMatTransforms().
const oski_value_t TL_alpha[NUM_ALPHA] [static] |
Initial value:
{
MAKE_VAL_COMPLEX (1.0, 0.0),
MAKE_VAL_COMPLEX (-1.0, 0.0),
}
const oski_value_t TL_beta[NUM_BETA] [static] |
Initial value:
{
MAKE_VAL_COMPLEX (0.0, 0.0),
MAKE_VAL_COMPLEX (1.0, 0.0),
}
const oski_ataop_t TL_op[NUM_OP] [static] |
const oski_storage_t TL_orient[NUM_ORIENT] [static] |
Initial value:
1.5.9