File: Makefile.am

package info (click to toggle)
fflas-ffpack 2.5.0-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 6,200 kB
  • sloc: cpp: 26,712; makefile: 784; sh: 430; csh: 95; ansic: 20
file content (110 lines) | stat: -rwxr-xr-x 4,256 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# Copyright (c) 2014 FFLAS-FFPACK
# written by JGD <Jean-Guillaume.Dumas@imag.fr>
#
# ========LICENCE========
# This file is part of the library FFLAS-FFPACK.
#
# FFLAS-FFPACK is free software: you can redistribute it and/or modify
# it under the terms of the  GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
# ========LICENCE========
#/

SUBDIRS =
benchmarks:  $(BENCHMARKS)

AM_CXXFLAGS = $(FFLASFFPACK_CXXFLAGS) $(GIVARO_CFLAGS) $(BLAS_CFLAGS) $(PARFLAGS) $(PRECOMPILE_FLAGS)
AM_CPPFLAGS = -I$(top_srcdir)
LDADD = $(GIVARO_LIBS) $(BLAS_LIBS) $(PARLIBS)
if FFLASFFPACK_PRECOMPILED
LDADD += $(top_builddir)/fflas-ffpack/interfaces/libs/libfflas.la
LDADD += $(top_builddir)/fflas-ffpack/interfaces/libs/libffpack.la
endif

PERFPUBLISHERFILE=benchmarks-report.xml

FFLA_BENCH =    benchmark-fgemm benchmark-fgemm-rns benchmark-wino benchmark-ftrsm  benchmark-fgesv benchmark-ftrsv benchmark-ftrtri  benchmark-inverse benchmark-fsytrf benchmark-fsyrk  benchmark-lqup benchmark-fsyr2k benchmark-pluq benchmark-charpoly benchmark-charpoly-mp benchmark-fgemm-mp benchmark-fgemv-mp benchmark-ftrsm-mp benchmark-lqup-mp benchmark-checkers benchmark-fadd-lvl2 benchmark-fdot benchmark-fgemv benchmark-quasisep benchmark-storage-transpose

BLAS_BENCH =    benchmark-sgemm$(EXEEXT) benchmark-dgemm benchmark-dtrsm
LAPA_BENCH =    benchmark-dtrtri benchmark-dgetri benchmark-dgetrf benchmark-dsytrf


if FFLASFFPACK_HAVE_LAPACK
USE_LAPACK_BENCH = $(LAPA_BENCH)
benchmark_dtrtri_SOURCES = benchmark-dtrtri.C
benchmark_dgetri_SOURCES = benchmark-dgetri.C
benchmark_dgetrf_SOURCES = benchmark-dgetrf.C
benchmark_dsytrf_SOURCES = benchmark-dsytrf.C
endif

BENCHMARKS =			\
	$(FFLA_BENCH)   \
	$(BLAS_BENCH)   \
	$(USE_LAPACK_BENCH) \
	$(USE_OMP_BENCH)

CLEANFILES = $(BENCHMARKS) $(PERFPUBLISHERFILE)

EXTRA_PROGRAMS = $(BENCHMARKS)

benchmark_sgemm_SOURCES = benchmark-dgemm.C
benchmark_dgemm_SOURCES = benchmark-dgemm.C
benchmark_dtrsm_SOURCES = benchmark-dtrsm.C

benchmark_fgemm_SOURCES = benchmark-fgemm.C
benchmark_fgemm_mp_SOURCES = benchmark-fgemm-mp.C
benchmark_fgemm_rns_SOURCES = benchmark-fgemm-rns.C
benchmark_fgemv_mp_SOURCES = benchmark-fgemv-mp.C
benchmark_wino_SOURCES = benchmark-wino.C
benchmark_ftrsm_SOURCES = benchmark-ftrsm.C
benchmark_fgesv_SOURCES = benchmark-fgesv.C
benchmark_ftrsm_mp_SOURCES = benchmark-ftrsm-mp.C
benchmark_ftrsv_SOURCES = benchmark-ftrsv.C
benchmark_ftrtri_SOURCES = benchmark-ftrtri.C
benchmark_inverse_SOURCES = benchmark-inverse.C
benchmark_fsytrf_SOURCES = benchmark-fsytrf.C
benchmark_fsyr2k_SOURCES = benchmark-fsyr2k.C
benchmark_fsyrk_SOURCES = benchmark-fsyrk.C
benchmark_quasisep_SOURCES = benchmark-quasisep.C
benchmark_charpoly_SOURCES = benchmark-charpoly.C
benchmark_charpoly_mp_SOURCES = benchmark-charpoly-mp.C
benchmark_lqup_SOURCES = benchmark-lqup.C
benchmark_lqup_mp_SOURCES = benchmark-lqup-mp.C
benchmark_pluq_SOURCES = benchmark-pluq.C
benchmark_checkers_SOURCES = benchmark-checkers.C
benchmark_fadd_lvl2_SOURCES = benchmark-fadd-lvl2.C
benchmark_fdot_SOURCES = benchmark-fdot.C
benchmark_fgemv_SOURCES = benchmark-fgemv.C
benchmark_storage_transpose_SOURCES = benchmark-storage-transpose.C

benchmark_sgemm_CXXFLAGS = $(AM_CXXFLAGS) -D__SGEMM__

# Perfpublisher script interaction - AB 2014/11/17
perfpublisher:
	+./perfpublisher.sh "$(PERFPUBLISHERFILE)" "$(BENCHMARKS)" "$(CXX)"
	mv $(PERFPUBLISHERFILE) ..
	make clean
	mv ../$(PERFPUBLISHERFILE) .

# for compilation of new benchmarks
FFLASFFPACK_BIN=@bindir@

define other_compilation
	$(CXX) $(CXXFLAGS) $(AM_CXXFLAGS) ${INCLUDES} $(AM_CPPFLAGS) $*.C -o $@ $(LDFLAGS) $(LDADD) $(LOADLIBES) $(LIBS)
endef

%:%.C
	$(other_compilation)

%:%.cpp
	$(other_compilation)