Changed test/sup alpha to 1; test libxsmm+netlib.

Details:
- Changed the value of alpha to 1.0 in test/sup/test_gemm.c. This is
  needed because libxsmm currently only optimizes gemm operations where
  alpha is unit (and beta is unit or zero).
- Adjusted the test/sup/Makefile to test libxsmm with netlib BLAS as its
  fallback library. This is the library that will be called the
  problem dimensions are deemed too large, or any other criteria for
  optimization are not met. (This was done not because it is realistic,
  but rather so that it would be very clear when libxsmm ceased handling
  gemm calls internally when the data are graphed.)
This commit is contained in:
Field G. Van Zee
2019-08-24 15:25:16 -05:00
parent 7aa52b5783
commit 4a0a6e89c5
2 changed files with 7 additions and 4 deletions

View File

@@ -96,6 +96,9 @@ endif
HOME_LIB_PATH := $(HOME)/flame/lib
MKL_LIB_PATH := $(HOME)/intel/mkl/lib/intel64
# netlib BLAS
NETLIB_LIB := $(HOME_LIB_PATH)/libblas.a
# OpenBLAS
OPENBLAS_LIB := $(HOME_LIB_PATH)/libopenblas.a
OPENBLASP_LIB := $(HOME_LIB_PATH)/libopenblasp.a
@@ -104,8 +107,8 @@ OPENBLASP_LIB := $(HOME_LIB_PATH)/libopenblasp.a
BLASFEO_LIB := $(HOME_LIB_PATH)/libblasfeo.a
# libxsmm
LIBXSMM_LIB := $(HOME_LIB_PATH)/libxsmm.a
LDFLAGS += -ldl
LIBXSMM_LIB := $(HOME_LIB_PATH)/libxsmm.a -ldl \
$(NETLIB_LIB) -lgfortran
# ATLAS
ATLAS_LIB := $(HOME_LIB_PATH)/libf77blas.a \
@@ -474,5 +477,5 @@ test_%_vendor_st.x: test_%_vendor_st.o $(LIBBLIS_LINK)
clean: cleanx
cleanx:
- $(RM_F) *.x
- $(RM_F) *.x *.o

View File

@@ -196,7 +196,7 @@ int main( int argc, char** argv )
bli_obj_set_conjtrans( transa, &a );
bli_obj_set_conjtrans( transb, &b );
bli_setsc( (2.0/1.0), 0.0, &alpha );
bli_setsc( (1.0/1.0), 0.0, &alpha );
bli_setsc( (1.0/1.0), 0.0, &beta );
bli_copym( &c, &c_save );