BeBOP: pOSKI  v1.0.0
parallel Optimized Sparse Kernel Interface library
 All Files Functions Variables
Functions
poski_VectorHandler.c File Reference

Handle the vector view object. More...

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <poski/poski_vectorcommon.h>
#include <poski/poski_partition.h>
#include <poski/poski_partitioncommon.h>
#include <poski/poski_malloc.h>
#include <poski/poski_print.h>

Functions

poski_vec_t poski_CreateVecView (poski_value_t *vec, poski_index_t length, poski_int_t inc, poski_partitionvec_t *partitionvec)
 Create a vector-view object.
int poski_DestroyVec (poski_vec_t vec)
 Destroy a vector-view object.
int poski_check_TwoVectors (poski_sparse_matrix_t *A, poski_value_t *vec1, poski_value_t *vec2, poski_index_t length)
 Compare two vector data.
int poski_report_vector (poski_value_t *vec, poski_index_t length, char *name)
 Report information of a vector data.
int poski_report_vec (poski_vec_t vec)
 Report information of a vector-view object.

Detailed Description

Handle the vector view object.

This module implements the routines to hanle the vector view object.

Also, refer


Function Documentation

poski_vec_t poski_CreateVecView ( poski_value_t *  vec,
poski_index_t  length,
poski_int_t  inc,
poski_partitionvec_t *  partitionvec 
)

Create a vector-view object.

Parameters:
[in]vecVector data
[in]lengthLogical vector length
[in]incPhysical stride between consecutive elements.
[in]partitionvecPartitionvector object.
Returns:
A valid vector-view object if success, or an error message otherwise.

This routine performs as follows:

(1) error-check for the input parameters.

(2) allocate space for a new vector-view object, and initialize it.

(3) create partitioned subvectors if partitionvector object is given.

(4) return the vector-view object.

int poski_DestroyVec ( poski_vec_t  vec)

Destroy a vector-view object.

Parameters:
[in]vecA vector-view object.
Returns:
0 if success, or an error message otherwise.
int poski_check_TwoVectors ( poski_sparse_matrix_t *  A,
poski_value_t *  vec1,
poski_value_t *  vec2,
poski_index_t  length 
)

Compare two vector data.

This routine compares that two vector data are equal or not.

Parameters:
[in]AThe sparse matrix object in CSR format.
[in]vec1First vector data.
[in]vec2Second vector data.
[in]lengthLogical vector length.
Returns:
0 if success, or an error message otherwise.
int poski_report_vector ( poski_value_t *  vec,
poski_index_t  length,
char *  name 
)

Report information of a vector data.

Parameters:
[in]vecVector data
[in]lengthLogical vector length.
[in]nameSpecified vector name.
Returns:
0 if success, or an error message otherwise.
int poski_report_vec ( poski_vec_t  vec)

Report information of a vector-view object.

Parameters:
[in]vecVector-view object.
Returns:
0 if success, or an error message otherwise.