symmrb.h File Reference


Detailed Description

Implementation of the register blocking heuristic for symmetric matrices, as described in the paper by Lee, et al., in ICPP'04, but extended to the Symmetric or Hermitian cases and based on MBCSR format.

#include <oski/common.h>
#include <oski/modcommon.h>
#include <oski/heurexport.h>

Go to the source code of this file.

Data Structures

struct  oski_symmrb_t
 Stores the results of evaluating the register blocking heuristic. More...
struct  oski_profile_MBCSRSymmMatMult_t
 Stores a register blocking profile. More...

Name mangling.

#define oski_symmrb_t   MANGLE_(oski_symmrb_t)
#define oski_LoadProfileMBCSRSymmMatMult   MANGLE_(oski_LoadProfileMBCSRSymmMatMult)
#define oski_UnloadProfileMBCSRSymmMatMult   MANGLE_(oski_UnloadProfileMBCSRSymmMatMult)

Defines

#define INC_OSKI_HEUR_SYMMRB_H
 oski/heur/symmrb.h included.
#define PROF_MBCSR_GET(P, r, c)   ((P)->perf[((r)-1)*(P)->max_c + (c)-1])
 Returns the performance (Mflop/s) at a block size $r\times c$, where $r$ and $c$ are 1-based.
#define PROF_MBCSR_SET(P, r, c, v)   ((P)->perf[((r)-1)*(P)->max_c + (c)-1] = (v))
 Set the performance (Mflop/s) at a block size $r\times c$, where $r$ and $c$ are 1-based.

Functions

const oski_profile_MBCSRSymmMatMult_toski_LoadProfileMBCSRSymmMatMult (const char *filename)
 Load the uniformly-aligned register blocking profile for sparse matrix-vector multiply.
void oski_UnloadProfileMBCSRSymmMatMult (void)
 Unload the uniformly-aligned register blocking profile for sparse matrix-vector multiply.


Function Documentation

const oski_profile_MBCSRSymmMatMult_t* oski_LoadProfileMBCSRSymmMatMult const char *  filename  ) 
 

Load the uniformly-aligned register blocking profile for sparse matrix-vector multiply.

This implementation


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