BeBOP Optimized Sparse Kernel Interface Library
1.0.1h
|
BCSR fill ratio estimator. More...
#include <oski/common.h>
#include <oski/mangle.h>
#include <oski/matrix.h>
#include <oski/CSR/format.h>
#include <oski/CSC/format.h>
Go to the source code of this file.
Data Structures | |
struct | oski_fillprofile_BCSR_t |
Stores a 'fill ratio estimate' profile. More... | |
Defines | |
#define | INC_OSKI_HEUR_ESTFILL_H |
oski/heur/estfill.h included. | |
#define | PROF_FILLBCSR_GET(P, r, c) (P)->ratio[(r-1)*(P)->max_c + (c-1)] |
Returns the fill ratio at an r x c block size. | |
#define | PROF_FILLBCSR_SET(P, r, c, rho) (P)->ratio[(r-1)*(P)->max_c + (c-1)] = (rho) |
Sets the fill ratio at an r x c block size. | |
Name mangling. | |
#define | oski_EstimateFillBCSR MANGLE_(oski_EstimateFillBCSR) |
#define | oski_DestroyBCSRFillProfile MANGLE_(oski_DestroyBCSRFillProfile) |
Functions | |
oski_fillprofile_BCSR_t * | oski_EstimateFillBCSR (const oski_matspecific_t *mat, const oski_matcommon_t *props, size_t max_r, size_t max_c, double prob_examine) |
Estimate the fill ratio at a variety of block sizes for BCSR storage. | |
void | oski_DestroyBCSRFillProfile (oski_fillprofile_BCSR_t *fill) |
Free the memory associated with a fill profile. |
BCSR fill ratio estimator.
#define INC_OSKI_HEUR_ESTFILL_H |
oski/heur/estfill.h included.
void oski_DestroyBCSRFillProfile | ( | oski_fillprofile_BCSR_t * | fill | ) |
Free the memory associated with a fill profile.
References oski_Free, and oski_fillprofile_BCSR_t::ratio.
oski_fillprofile_BCSR_t* oski_EstimateFillBCSR | ( | const oski_matspecific_t * | mat, |
const oski_matcommon_t * | props, | ||
size_t | max_r, | ||
size_t | max_c, | ||
double | prob_examine | ||
) |
Estimate the fill ratio at a variety of block sizes for BCSR storage.
References CheckArgs(), ERR_BAD_MAT, EstimateFillFromCSC(), EstimateFillFromCSR(), MACRO_TO_STRING, oski_fillprofile_BCSR_t::max_c, oski_fillprofile_BCSR_t::max_r, oski_Free, OSKI_IND_ID, oski_LookupMatTypeId(), oski_Malloc, OSKI_VAL_ID, oski_fillprofile_BCSR_t::ratio, oski_matspecific_t::repr, and oski_matspecific_t::type_id.