From f6586a91478b1ca5920c58f90925deaafab81465 Mon Sep 17 00:00:00 2001 From: cnlohr Date: Sat, 17 Mar 2018 14:44:10 -0400 Subject: Update tests... seems to work with both cblas and dclapack... Still haven't checked outputs. --- redist/dclapack.h | 1 - redist/test_dcl.c | 35 ++++++++++++++++++++++++++++++----- 2 files changed, 30 insertions(+), 6 deletions(-) (limited to 'redist') diff --git a/redist/dclapack.h b/redist/dclapack.h index cae377b..d4634ac 100644 --- a/redist/dclapack.h +++ b/redist/dclapack.h @@ -269,7 +269,6 @@ PRINT(Ainv,n,n); \ for (int _k = 0; _k < n; _k++) { \ sum += _(A, _i, _k) * _(B, _k, _j); \ } \ - printf( "-> %d %d = %f %f %f %f[%d %d]\n", _i, _j, alpha,sum,beta, _(C,_i,_j), _i, _j ); \ _(R, _i, _j) = alpha * sum + beta * _(C, _i, _j); \ } \ } \ diff --git a/redist/test_dcl.c b/redist/test_dcl.c index 6b0d870..29c3c72 100644 --- a/redist/test_dcl.c +++ b/redist/test_dcl.c @@ -1,8 +1,13 @@ +//gcc -msse2 -O3 -ftree-vectorize test_dcl.c dclhelpers.c os_generic.c -DFLT=double -lpthread -lcblas && valgrind ./a.out + + #include "dclhelpers.h" #include #include #include #include +#include "os_generic.h" +#include int main() { @@ -61,7 +66,7 @@ int main() } -#if 0 +#if 1 //Currently failing test... { @@ -70,8 +75,8 @@ int main() // FLT emo[4][2]; FLT em1[12][20]; - FLT em2[20][12]; - FLT emo[20][12]; + FLT em2[20][20]; + FLT emo[20][20]; int x, y; for( y = 0; y < 12; y++ ) @@ -79,9 +84,13 @@ int main() em1[y][x] = (rand()%1000)/1000.0; for( y = 0; y < 20; y++ ) - for( x = 0; x < 12; x++ ) + for( x = 0; x < 20; x++ ) em2[y][x] = (rand()%1000)/1000.0; + for( y = 0; y < 20; y++ ) + for( x = 0; x < 20; x++ ) + emo[y][x] = 0; + int m = 12; int n = 20; int k = 12; @@ -89,7 +98,23 @@ int main() dclPrint( em1[0], 20, 12, 20 ); dclPrint( em2[0], 12, 20, 12 ); - dcldgemm( 0, 0, m, n, k, 1.0, em1[0], 20, em2[0], 12, .1, emo[0], 12 ); + int i; + + double start = OGGetAbsoluteTime(); + for( i = 0; i < 10000; i++ ) + { + dcldgemm( 0, 0, m, n, k, 1.0, DMS(em1), DMS(em2), .1, DMS(emo) ); + //cblas_dgemm( CblasRowMajor, CblasNoTrans, CblasNoTrans, m, n, k, 1.0, DMS(em1), DMS(em2), .1, DMS(emo) ); + +/*void cblas_dgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, + CBLAS_TRANSPOSE TransB, const int M, const int N, + const int K, const double alpha, const double *A, + const int lda, const double *B, const int ldb, + const double beta, double *C, const int ldc);*/ + + } + printf( "Elapsed: %f\n", OGGetAbsoluteTime()-start ); + dclPrint( emo[0], 12, 20, 12 ); } #endif -- cgit v1.2.3