hba_and_at.c File Reference


Detailed Description

Comprehensive test of the kernel for applying sparse $A$ and $\mathrm{op}(A) \in \{A, A^T, A^H=\bar{A}^T\}$ simultaneously.

#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"

Parameter test lists.

#define NUM_OP   3
#define NUM_NUM_VECS   2
#define NUM_ALPHA   2
#define NUM_BETA   1
#define NUM_USE_MINSTRIDE   2
#define NUM_ORIENT   2
static const oski_matop_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]

Functions

static int TestInstance (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, oski_matop_t op, oski_index_t num_vecs, oski_value_t alpha, const oski_vecview_t x, oski_value_t beta, oski_vecview_t y0, oski_value_t omega, const oski_vecview_t w, oski_value_t zeta, oski_vecview_t z0, int test_num, size_t max_tests, int min_test, int max_test)
static int TestZ (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, oski_matop_t opA, oski_index_t num_vecs, oski_value_t alpha, const oski_vecview_t x, oski_value_t beta, oski_vecview_t y, oski_value_t omega, const oski_vecview_t w, oski_value_t zeta, int test_num, size_t max_tests, int min_test, int max_test)
static int TestZeta (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, oski_matop_t opA, oski_index_t num_vecs, oski_value_t alpha, const oski_vecview_t x, oski_value_t beta, oski_vecview_t y, oski_value_t omega, const oski_vecview_t w, int test_num, size_t max_tests, int min_test, int max_test)
static int TestW (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, oski_matop_t opA, oski_index_t num_vecs, oski_value_t alpha, const oski_vecview_t x, oski_value_t beta, oski_vecview_t y, oski_value_t omega, int test_num, size_t max_tests, int min_test, int max_test)
static int TestOmega (const oski_matrix_t A0, const oski_matrix_t A1, oski_index_t m, oski_index_t n, oski_matop_t opA, oski_index_t num_vecs, oski_value_t alpha, const oski_vecview_t x, oski_value_t beta, oski_vecview_t y, 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_matop_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_matop_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_matop_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_matop_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_matop_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_MatMultAndMatTransMult (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[])


Variable Documentation

const oski_value_t TL_alpha[NUM_ALPHA] [static]
 

Initial value:

 {
  MAKE_VAL_COMPLEX (1.0, 0.0),

}

const oski_value_t TL_beta[NUM_BETA] [static]
 

Initial value:

 {

}

const oski_matop_t TL_op[NUM_OP] [static]
 

Initial value:

const oski_storage_t TL_orient[NUM_ORIENT] [static]
 

Initial value:


Generated on Wed Sep 19 16:41:22 2007 for BeBOP Optimized Sparse Kernel Interface Library by  doxygen 1.4.6