mmul_simple_test.cc File Reference

Tests and measures timings for matrix-matrix multiplication using BLAS and compares to a naive implementation. More...

#include <cstdio>
#include <cstdlib>
#include <vector>
#include "realtype.h"
#include "utilities.h"
#include "gblas.h"

Functions

static void fill_matrix_with_random_numbers (int n, std::vector< ergo_real > &A)
static void do_naive_mmul (std::vector< ergo_real > &C, const std::vector< ergo_real > &A, const std::vector< ergo_real > &B, int n)
static void verify_mmul_result (const std::vector< ergo_real > &A, const std::vector< ergo_real > &B, const std::vector< ergo_real > &C, int n)
ergo_real compare_matrices (const std::vector< ergo_real > &A, const std::vector< ergo_real > &B, int n)
int main (int argc, char *argv[])


Detailed Description

Tests and measures timings for matrix-matrix multiplication using BLAS and compares to a naive implementation.

The idea is to run this linking to different BLAS variants with and without threading inside the BLAS gemm routine, to see how much speedup can be achieved from threading.


Function Documentation

ergo_real compare_matrices ( const std::vector< ergo_real > &  A,
const std::vector< ergo_real > &  B,
int  n 
)

static void do_naive_mmul ( std::vector< ergo_real > &  C,
const std::vector< ergo_real > &  A,
const std::vector< ergo_real > &  B,
int  n 
) [static]

static void fill_matrix_with_random_numbers ( int  n,
std::vector< ergo_real > &  A 
) [static]

int main ( int  argc,
char *  argv[] 
)

static void verify_mmul_result ( const std::vector< ergo_real > &  A,
const std::vector< ergo_real > &  B,
const std::vector< ergo_real > &  C,
int  n 
) [static]


Generated on Mon Sep 17 14:32:57 2012 for ergo by  doxygen 1.4.7