Public Member Functions
ZOQuad< _Field > Class Template Reference

A class of striped or block-decomposed zero-one matrices. More...

#include <quad-matrix.h>

Public Member Functions

int init (const ZeroOne< Field > &A)

Detailed Description

template<typename _Field>
class LinBox::ZOQuad< _Field >

A class of striped or block-decomposed zero-one matrices.

Right now we implement only side-by-side blocks, which is done to improve cache performance. This class works especially well on quite sparse matrices whose entries are rather randomly positioned. The idea is that the vector to be multiplied by each block fits in cache. It is being more or less randomly accessed, so cache misses are avoided for these random accesses.

The possibility exists to set the stripe(block) width by a configure-time parameter. Also this approach should be used on sparse matrices which are not zero-one.

This ZOQuad class is like a tagged union of several BB types. Then SideBySide does not have it's two part types as template parameters. Instead the parts are always ZOQuads.

needs read for test-blackbox.h

Member Function Documentation

int init ( const ZeroOne< Field > &  A)

The documentation for this class was generated from the following file: