summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: de2d32b)
raw | patch | inline | side by side (parent: de2d32b)
author | Jianzhong Xu <xuj@ti.com> | |
Fri, 15 Jan 2016 14:38:40 +0000 (14:38 +0000) | ||
committer | Jianzhong Xu <xuj@ti.com> | |
Fri, 15 Jan 2016 14:38:40 +0000 (14:38 +0000) |
Makefile | patch | blob | history | |
blasblisacc/src/ti_cblas_mem_config.c | patch | blob | history | |
cblas/Makefile.in | patch | blob | history | |
clapack/BLAS/run_blas_tests.sh | patch | blob | history | |
clapack/BLAS/run_tests_only.sh | [new file with mode: 0755] | patch | blob |
clapack/F2CLIBS/libf2c/arith.h | patch | blob | history | |
clapack/TESTING/run_clapack_tests.sh | [new file with mode: 0755] | patch | blob |
clapack/TESTING/run_testsuite.sh | [new file with mode: 0755] | patch | blob |
diff --git a/Makefile b/Makefile
index 30457b62dbcf1340b2f1d934cf1bb08445a1b64d..b03b973291f20a38df412d74e2fe5cd84c437332 100644 (file)
--- a/Makefile
+++ b/Makefile
cleanARMplusDSP: cleanDSPlibs cleanARMlibs
-clean:
- cd $(LINALG_CBLAS_DIR)/src; make arch=ARM clean; \
- cd ../$(LINALG_TICBLAS_DIR)/src; make clean; cd ..; \
- cd ../../$(LINALG_BLIS_DIR); ./configure -p install/arm cortex-a15; make clean; \
- cd ../$(LINALG_BLASACC_DIR)/src; make -f Makefile.ARM cleanARM; \
- cd ../../$(LINALG_CLAPACK_DIR); make clean
-
-install:
- install -m 755 -d ${DESTDIR}/usr/include
- install -m 755 -d ${DESTDIR}/usr/lib
- install -m 755 -d ${DESTDIR}/usr/share/doc/ti-linalg
- install -m 755 -d ${DESTDIR}/usr/share/ti/examples/linalg
- cp $(LINALG_HEADERS) ${DESTDIR}/usr/include
- cp $(LINALG_BLASACC_DIR)/lib/libcblas_armplusdsp.a ${DESTDIR}/usr/lib
- cp $(LINALG_BLIS_DIR)/install/arm/lib/libblis-$(BLIS_VERSION)-cortex-a15.a ${DESTDIR}/usr/lib/libblis.a
- cp -r ./examples/* ${DESTDIR}/usr/share/ti/examples/linalg
- cp $(LINALG_CLAPACK_DIR)/lapack_ARM.a ${DESTDIR}/usr/lib/liblapack.a
- cp $(LINALG_CLAPACK_DIR)/libcblaswr_ARM.a ${DESTDIR}/usr/lib/libcblaswr.a
- cp $(LINALG_CLAPACK_DIR)/F2CLIBS/libf2c_ARM.a ${DESTDIR}/usr/lib/libf2c.a
- cp docs/* ${DESTDIR}/usr/share/doc/ti-linalg
-
installDSPlib:
install -m 755 -d ${DESTDIR}/include
install -m 755 -d ${DESTDIR}/lib
index e1879fb27e3123fda8a8c9acd2390e199b4be3a8..ce6daf1eac232ed34102073e9668dd1e63a221f2 100644 (file)
{
int l1d_cfg_err, l2_cfg_err;
- /* configure L1D back */
+ /* configure L1D back if necessary */
l1d_cfg_err = LIB_CACHE_SUCCESS;
if(l1D_SRAM_size_orig!=lib_get_L1D_SRAM_size()) {
#pragma omp parallel
l1d_cfg_err = lib_L1D_config_SRAM(l1D_SRAM_size_orig);
}
}
+ if(l1d_cfg_err != LIB_CACHE_SUCCESS) {
+ return(-3);
+ }
+ /* configure L2 back if necessary */
l2_cfg_err = LIB_CACHE_SUCCESS;
- if(l2_SRAM_size_orig <= lib_get_L2_SRAM_size()) {
+ if(l2_SRAM_size_orig != lib_get_L2_SRAM_size()) {
#pragma omp parallel
{
l2_cfg_err = lib_L2_config_SRAM(l2_SRAM_size_orig);
}
- }
-
- /* configure L1D and L2 back */
- if(l1d_cfg_err || l2_cfg_err) {
+ }
+ if(l2_cfg_err != LIB_CACHE_SUCCESS) {
return(-4);
}
diff --git a/cblas/Makefile.in b/cblas/Makefile.in
index 43f68c27d7d52cc0e5618c08434490378ff8236b..61dcf9de53db21d1b4a46c9cabda74690b1a608d 120000 (symlink)
--- a/cblas/Makefile.in
+++ b/cblas/Makefile.in
-Makefile.C66
\ No newline at end of file
+Makefile.ARM
\ No newline at end of file
index b107da123d6348de208e6bf46eb70454e184eedc..9a1e05072d9ebf9de9531362b513af2f10f74d7b 100755 (executable)
mkdir results_opt;
export TI_CBLAS_OFFLOAD=000;
-make run_tests;
+#make run_tests;
+./run_tests_only.sh
mv *.out results_arm;
mv *.SNAP results_arm;
export TI_CBLAS_OFFLOAD=111;
-make run_tests;
+#make run_tests;
+./run_tests_only.sh
mv *.out results_dsp;
mv *.SNAP results_dsp;
export TI_CBLAS_OFFLOAD=002;
-make run_tests;
+#make run_tests;
+./run_tests_only.sh
mv *.out results_opt;
mv *.SNAP results_opt;
diff --git a/clapack/BLAS/run_tests_only.sh b/clapack/BLAS/run_tests_only.sh
--- /dev/null
@@ -0,0 +1,30 @@
+#!/bin/bash
+
+export TI_CBLAS_OFFLOAD=000;
+echo "Now testing BLAS Level 1"
+echo -n "single precision real.. " ; ./xblat1s_ARM > sblat1.out 2> /dev/null ; rm -f /tmp/opencl* ; echo done
+echo -n "double precision real.. " ; ./xblat1d_ARM > dblat1.out 2> /dev/null ; rm -f /tmp/opencl* ; echo done
+echo -n "single precision complex.. " ; ./xblat1c_ARM > cblat1.out 2> /dev/null ; rm -f /tmp/opencl* ; echo done
+echo -n "double precision complex.. " ; ./xblat1z_ARM > zblat1.out 2> /dev/null ; rm -f /tmp/opencl* ; echo done
+echo
+(grep FAIL [sdcz]blat1.out && echo "ABOVE LEVEL 1 TESTS FAILED") || (echo "ALL LEVEL 1 TESTS PASSED. Summary follows:";
+egrep 'PASS|FAIL|Test' [scdz]blat1.out; echo "ALL LEVEL 1 TESTS PASSED.")
+echo
+
+echo "Now testing BLAS Level 2"
+echo -n "single precision real.. " ; ./xblat2s_ARM < sblat2.in > /dev/null 2>&1 ; rm -f /tmp/opencl* ; echo done
+echo -n "double precision real.. " ; ./xblat2d_ARM < dblat2.in > /dev/null 2>&1 ; rm -f /tmp/opencl* ; echo done
+echo -n "single precision complex.. " ; ./xblat2c_ARM < cblat2.in > /dev/null 2>&1 ; rm -f /tmp/opencl*; echo done
+echo -n "double precision complex.. " ; ./xblat2z_ARM < zblat2.in > /dev/null 2>&1 ; rm -f /tmp/opencl*; echo done
+echo
+(grep FAILED [sdcz]blat2.out && echo "ABOVE LEVEL 2 TESTS FAILED") || (echo "ALL LEVEL 2 TESTS PASSED. Summary follows:"; grep PASSED [scdz]blat2.out; echo "ALL LEVEL 2 TESTS PASSED.")
+echo
+
+echo "Now testing BLAS Level 3"
+echo -n "single precision real.. " ; ./xblat3s_ARM < sblat3.in > /dev/null 2>&1 ; rm -f /tmp/opencl* ; echo done
+echo -n "double precision real.. " ; ./xblat3d_ARM < dblat3.in > /dev/null 2>&1 ; rm -f /tmp/opencl* ; echo done
+echo -n "single precision complex.. " ; ./xblat3c_ARM < cblat3.in > /dev/null 2>&1 ; rm -f /tmp/opencl*; echo done
+echo -n "double precision complex.. " ; ./xblat3z_ARM < zblat3.in > /dev/null 2>&1 ; rm -f /tmp/opencl*; echo done
+echo
+(grep FAILED [sdcz]blat3.out && echo "ABOVE LEVEL 3 TESTS FAILED") || (echo "ALL LEVEL 3 TESTS PASSED. Summary follows:"; grep PASSED [scdz]blat3.out; echo "ALL LEVEL 3 TESTS PASSED.")
+
index 5f30899c7ad22861c8dbeaed49ce74e2227754a4..356d34f5bc53334618b6bc786732bab571fb8c06 100644 (file)
-#define IEEE_8087
-#define Arith_Kind_ASL 1
-#define Double_Align
-#define QNaN0 0x0
-#define QNaN1 0x7ff80000
+#define IEEE_8087
+#define Arith_Kind_ASL 1
+#define Long int
+#define Intcast (int)(long)
+#define Double_Align
+#define X64_bit_pointers
+#define QNaN0 0x0
+#define QNaN1 0xfff80000
diff --git a/clapack/TESTING/run_clapack_tests.sh b/clapack/TESTING/run_clapack_tests.sh
--- /dev/null
@@ -0,0 +1,18 @@
+#!/bin/bash
+
+mkdir results_arm;
+mkdir results_dsp;
+mkdir results_opt;
+
+export TI_CBLAS_OFFLOAD=000;
+./run_testsuite.sh
+mv *.out results_arm;
+
+export TI_CBLAS_OFFLOAD=001
+./run_testsuite.sh
+mv *.out results_dsp;
+
+export TI_CBLAS_OFFLOAD=002
+./run_testsuite.sh
+mv *.out results_opt;
+
diff --git a/clapack/TESTING/run_testsuite.sh b/clapack/TESTING/run_testsuite.sh
--- /dev/null
@@ -0,0 +1,166 @@
+#!/bin/bash
+
+echo Testing REAL LAPACK linear equation routines
+./xlintsts_ARM < stest.in > stest.out 2>&1
+echo NEP: Testing Nonsymmetric Eigenvalue Problem routines
+./xeigtsts_ARM < nep.in > snep.out 2>&1
+echo SEP: Testing Symmetric Eigenvalue Problem routines
+./xeigtsts_ARM < sep.in > ssep.out 2>&1
+echo SVD: Testing Singular Value Decomposition routines
+./xeigtsts_ARM < svd.in > ssvd.out 2>&1
+echo SEC: Testing REAL Eigen Condition Routines
+./xeigtsts_ARM < sec.in > sec.out 2>&1
+echo SEV: Testing REAL Nonsymmetric Eigenvalue Driver
+./xeigtsts_ARM < sed.in > sed.out 2>&1
+echo SGG: Testing REAL Nonsymmetric Generalized Eigenvalue Problem routines
+./xeigtsts_ARM < sgg.in > sgg.out 2>&1
+echo SGD: Testing REAL Nonsymmetric Generalized Eigenvalue Problem driver routines
+./xeigtsts_ARM < sgd.in > sgd.out 2>&1
+echo SSB: Testing REAL Symmetric Eigenvalue Problem routines
+./xeigtsts_ARM < ssb.in > ssb.out 2>&1
+echo SSG: Testing REAL Symmetric Generalized Eigenvalue Problem routines
+./xeigtsts_ARM < ssg.in > ssg.out 2>&1
+echo SGEBAL: Testing the balancing of a REAL general matrix
+./xeigtsts_ARM < sbal.in > sbal.out 2>&1
+echo SGEBAK: Testing the back transformation of a REAL balanced matrix
+./xeigtsts_ARM < sbak.in > sbak.out 2>&1
+echo SGGBAL: Testing the balancing of a pair of REAL general matrices
+./xeigtsts_ARM < sgbal.in > sgbal.out 2>&1
+echo SGGBAK: Testing the back transformation of a pair of REAL balanced matrices
+./xeigtsts_ARM < sgbak.in > sgbak.out 2>&1
+echo SBB: Testing banded Singular Value Decomposition routines
+./xeigtsts_ARM < sbb.in > sbb.out 2>&1
+echo GLM: Testing Generalized Linear Regression Model routines
+./xeigtsts_ARM < glm.in > sglm.out 2>&1
+echo GQR: Testing Generalized QR and RQ factorization routines
+./xeigtsts_ARM < gqr.in > sgqr.out 2>&1
+echo GSV: Testing Generalized Singular Value Decomposition routines
+./xeigtsts_ARM < gsv.in > sgsv.out 2>&1
+echo LSE: Testing Constrained Linear Least Squares routines
+./xeigtsts_ARM < lse.in > slse.out 2>&1
+echo Testing COMPLEX LAPACK linear equation routines
+./xlintstc_ARM < ctest.in > ctest.out 2>&1
+echo NEP: Testing Nonsymmetric Eigenvalue Problem routines
+./xeigtstc_ARM < nep.in > cnep.out 2>&1
+echo SEP: Testing Symmetric Eigenvalue Problem routines
+./xeigtstc_ARM < sep.in > csep.out 2>&1
+echo SVD: Testing Singular Value Decomposition routines
+./xeigtstc_ARM < svd.in > csvd.out 2>&1
+echo CEC: Testing COMPLEX Eigen Condition Routines
+./xeigtstc_ARM < cec.in > cec.out 2>&1
+echo CES: Testing COMPLEX Nonsymmetric Schur Form Driver
+./xeigtstc_ARM < ced.in > ced.out 2>&1
+echo CGG: Testing COMPLEX Nonsymmetric Generalized Eigenvalue Problem routines
+./xeigtstc_ARM < cgg.in > cgg.out 2>&1
+echo CGD: Testing COMPLEX Nonsymmetric Generalized Eigenvalue Problem driver routines
+./xeigtstc_ARM < cgd.in > cgd.out 2>&1
+echo CHB: Testing Hermitian Eigenvalue Problem routines
+./xeigtstc_ARM < csb.in > csb.out 2>&1
+echo CSG: Testing Symmetric Generalized Eigenvalue Problem routines
+./xeigtstc_ARM < csg.in > csg.out 2>&1
+echo CGEBAL: Testing the balancing of a COMPLEX general matrix
+./xeigtstc_ARM < cbal.in > cbal.out 2>&1
+echo CGEBAK: Testing the back transformation of a COMPLEX balanced matrix
+./xeigtstc_ARM < cbak.in > cbak.out 2>&1
+echo CGGBAL: Testing the balancing of a pair of COMPLEX general matrices
+./xeigtstc_ARM < cgbal.in > cgbal.out 2>&1
+echo CGGBAK: Testing the back transformation of a pair of COMPLEX balanced matrices
+./xeigtstc_ARM < cgbak.in > cgbak.out 2>&1
+echo CBB: Testing banded Singular Value Decomposition routines
+./xeigtstc_ARM < cbb.in > cbb.out 2>&1
+echo GLM: Testing Generalized Linear Regression Model routines
+./xeigtstc_ARM < glm.in > cglm.out 2>&1
+echo GQR: Testing Generalized QR and RQ factorization routines
+./xeigtstc_ARM < gqr.in > cgqr.out 2>&1
+echo GSV: Testing Generalized Singular Value Decomposition routines
+./xeigtstc_ARM < gsv.in > cgsv.out 2>&1
+echo LSE: Testing Constrained Linear Least Squares routines
+./xeigtstc_ARM < lse.in > clse.out 2>&1
+echo Testing DOUBLE PRECISION LAPACK linear equation routines
+./xlintstd_ARM < dtest.in > dtest.out 2>&1
+echo NEP: Testing Nonsymmetric Eigenvalue Problem routines
+./xeigtstd_ARM < nep.in > dnep.out 2>&1
+echo SEP: Testing Symmetric Eigenvalue Problem routines
+./xeigtstd_ARM < sep.in > dsep.out 2>&1
+echo SVD: Testing Singular Value Decomposition routines
+./xeigtstd_ARM < svd.in > dsvd.out 2>&1
+echo DEC: Testing DOUBLE PRECISION Eigen Condition Routines
+./xeigtstd_ARM < dec.in > dec.out 2>&1
+echo DEV: Testing DOUBLE PRECISION Nonsymmetric Eigenvalue Driver
+./xeigtstd_ARM < ded.in > ded.out 2>&1
+echo DGG: Testing DOUBLE PRECISION Nonsymmetric Generalized Eigenvalue Problem routines
+./xeigtstd_ARM < dgg.in > dgg.out 2>&1
+echo DGD: Testing DOUBLE PRECISION Nonsymmetric Generalized Eigenvalue Problem driver routines
+./xeigtstd_ARM < dgd.in > dgd.out 2>&1
+echo DSB: Testing DOUBLE PRECISION Symmetric Eigenvalue Problem routines
+./xeigtstd_ARM < dsb.in > dsb.out 2>&1
+echo DSG: Testing DOUBLE PRECISION Symmetric Generalized Eigenvalue Problem routines
+./xeigtstd_ARM < dsg.in > dsg.out 2>&1
+echo DGEBAL: Testing the balancing of a DOUBLE PRECISION general matrix
+./xeigtstd_ARM < dbal.in > dbal.out 2>&1
+echo DGEBAK: Testing the back transformation of a DOUBLE PRECISION balanced matrix
+./xeigtstd_ARM < dbak.in > dbak.out 2>&1
+echo DGGBAL: Testing the balancing of a pair of DOUBLE PRECISION general matrices
+./xeigtstd_ARM < dgbal.in > dgbal.out 2>&1
+echo DGGBAK: Testing the back transformation of a pair of DOUBLE PRECISION balanced matrices
+./xeigtstd_ARM < dgbak.in > dgbak.out 2>&1
+echo DBB: Testing banded Singular Value Decomposition routines
+./xeigtstd_ARM < dbb.in > dbb.out 2>&1
+echo GLM: Testing Generalized Linear Regression Model routines
+./xeigtstd_ARM < glm.in > dglm.out 2>&1
+echo GQR: Testing Generalized QR and RQ factorization routines
+./xeigtstd_ARM < gqr.in > dgqr.out 2>&1
+echo GSV: Testing Generalized Singular Value Decomposition routines
+./xeigtstd_ARM < gsv.in > dgsv.out 2>&1
+echo LSE: Testing Constrained Linear Least Squares routines
+./xeigtstd_ARM < lse.in > dlse.out 2>&1
+echo Testing COMPLEX16 LAPACK linear equation routines
+./xlintstz_ARM < ztest.in > ztest.out 2>&1
+echo NEP: Testing Nonsymmetric Eigenvalue Problem routines
+./xeigtstz_ARM < nep.in > znep.out 2>&1
+echo SEP: Testing Symmetric Eigenvalue Problem routines
+./xeigtstz_ARM < sep.in > zsep.out 2>&1
+echo SVD: Testing Singular Value Decomposition routines
+./xeigtstz_ARM < svd.in > zsvd.out 2>&1
+echo ZEC: Testing COMPLEX16 Eigen Condition Routines
+./xeigtstz_ARM < zec.in > zec.out 2>&1
+echo ZES: Testing COMPLEX16 Nonsymmetric Schur Form Driver
+./xeigtstz_ARM < zed.in > zed.out 2>&1
+echo ZGG: Testing COMPLEX16 Nonsymmetric Generalized Eigenvalue Problem routines
+./xeigtstz_ARM < zgg.in > zgg.out 2>&1
+echo ZGD: Testing COMPLEX16 Nonsymmetric Generalized Eigenvalue Problem driver routines
+./xeigtstz_ARM < zgd.in > zgd.out 2>&1
+echo ZHB: Testing Hermitian Eigenvalue Problem routines
+./xeigtstz_ARM < zsb.in > zsb.out 2>&1
+echo ZSG: Testing Symmetric Generalized Eigenvalue Problem routines
+./xeigtstz_ARM < zsg.in > zsg.out 2>&1
+echo ZGEBAL: Testing the balancing of a COMPLEX16 general matrix
+./xeigtstz_ARM < zbal.in > zbal.out 2>&1
+echo ZGEBAK: Testing the back transformation of a COMPLEX16 balanced matrix
+./xeigtstz_ARM < zbak.in > zbak.out 2>&1
+echo ZGGBAL: Testing the balancing of a pair of COMPLEX general matrices
+./xeigtstz_ARM < zgbal.in > zgbal.out 2>&1
+echo ZGGBAK: Testing the back transformation of a pair of COMPLEX16 balanced matrices
+./xeigtstz_ARM < zgbak.in > zgbak.out 2>&1
+echo ZBB: Testing banded Singular Value Decomposition routines
+./xeigtstz_ARM < zbb.in > zbb.out 2>&1
+echo GLM: Testing Generalized Linear Regression Model routines
+./xeigtstz_ARM < glm.in > zglm.out 2>&1
+echo GQR: Testing Generalized QR and RQ factorization routines
+./xeigtstz_ARM < gqr.in > zgqr.out 2>&1
+echo GSV: Testing Generalized Singular Value Decomposition routines
+./xeigtstz_ARM < gsv.in > zgsv.out 2>&1
+echo LSE: Testing Constrained Linear Least Squares routines
+./xeigtstz_ARM < lse.in > zlse.out 2>&1
+echo Testing REAL LAPACK RFP protoype linear equation routines
+./xlintstrfs_ARM < stest_rfp.in > stest_rfp.out 2>&1
+echo Testing SINGLE-DOUBLE PRECISION LAPACK prototype linear equation routines
+./xlintstds_ARM < dstest.in > dstest.out 2>&1
+echo Testing DOUBLE PRECISION LAPACK RFP protoype linear equation routines
+./xlintstrfd_ARM < dtest_rfp.in > dtest_rfp.out 2>&1
+echo Testing COMPLEX LAPACK RFP protoype linear equation routines
+./xlintstrfc_ARM < ctest_rfp.in > ctest_rfp.out 2>&1
+echo Testing COMPLEX-COMPLEX16 LAPACK protoype linear equation routines
+./xlintstzc_ARM < zctest.in > zctest.out 2>&1
+echo Testing COMPLEX16 LAPACK RFP protoype linear equation routines
+./xlintstrfz_ARM < ztest_rfp.in > ztest_rfp.out 2>&1