Makefile.am 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374
  1. # StarPU --- Runtime system for heterogeneous multicore architectures.
  2. #
  3. # Copyright (C) 2009-2017 Université de Bordeaux
  4. # Copyright (C) 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017 CNRS
  5. # Copyright (C) 2016 Inria
  6. #
  7. # StarPU is free software; you can redistribute it and/or modify
  8. # it under the terms of the GNU Lesser General Public License as published by
  9. # the Free Software Foundation; either version 2.1 of the License, or (at
  10. # your option) any later version.
  11. #
  12. # StarPU is distributed in the hope that it will be useful, but
  13. # WITHOUT ANY WARRANTY; without even the implied warranty of
  14. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  15. #
  16. # See the GNU Lesser General Public License in COPYING.LGPL for more details.
  17. include $(top_srcdir)/starpu.mk
  18. if STARPU_SIMGRID
  19. STARPU_PERF_MODEL_DIR=$(abs_top_srcdir)/tools/perfmodels/sampling
  20. STARPU_HOSTNAME=mirage
  21. MALLOC_PERTURB_=0
  22. export STARPU_PERF_MODEL_DIR
  23. export STARPU_HOSTNAME
  24. export MALLOC_PERTURB_
  25. endif
  26. SUBDIRS =
  27. AM_CFLAGS = $(HWLOC_CFLAGS) $(STARPU_CUDA_CPPFLAGS) $(STARPU_OPENCL_CPPFLAGS) $(STARPU_COI_CPPFLAGS) $(GLOBAL_AM_CFLAGS)
  28. LIBS = $(top_builddir)/src/@LIBSTARPU_LINK@ @LIBS@ $(FXT_LIBS)
  29. AM_CPPFLAGS = -I$(top_srcdir)/include/ -I$(top_srcdir)/tools/ -I$(top_srcdir)/mpi/ -I$(top_builddir)/src -I$(top_srcdir)/src
  30. AM_LDFLAGS = @STARPU_EXPORT_DYNAMIC@ $(STARPU_COI_LDFLAGS) $(STARPU_SCIF_LDFLAGS)
  31. bin_PROGRAMS =
  32. dist_bin_SCRIPTS =
  33. dist_pkgdata_DATA = gdbinit
  34. pkgdata_perfmodels_sampling_busdir = $(datarootdir)/starpu/perfmodels/sampling/bus
  35. pkgdata_perfmodels_sampling_codeletsdir = $(datarootdir)/starpu/perfmodels/sampling/codelets/44
  36. dist_pkgdata_perfmodels_sampling_bus_DATA = \
  37. perfmodels/sampling/bus/attila.affinity \
  38. perfmodels/sampling/bus/attila.bandwidth \
  39. perfmodels/sampling/bus/attila.config \
  40. perfmodels/sampling/bus/attila.latency \
  41. perfmodels/sampling/bus/attila.platform.xml \
  42. perfmodels/sampling/bus/attila.platform.v4.xml \
  43. perfmodels/sampling/bus/idgraf.affinity \
  44. perfmodels/sampling/bus/idgraf.bandwidth \
  45. perfmodels/sampling/bus/idgraf.config \
  46. perfmodels/sampling/bus/idgraf.latency \
  47. perfmodels/sampling/bus/idgraf.platform.xml \
  48. perfmodels/sampling/bus/idgraf.platform.v4.xml \
  49. perfmodels/sampling/bus/mirage.affinity \
  50. perfmodels/sampling/bus/mirage.bandwidth \
  51. perfmodels/sampling/bus/mirage.config \
  52. perfmodels/sampling/bus/mirage.latency \
  53. perfmodels/sampling/bus/mirage.platform.xml \
  54. perfmodels/sampling/bus/mirage.platform.v4.xml \
  55. perfmodels/sampling/bus/sirocco.affinity \
  56. perfmodels/sampling/bus/sirocco.bandwidth \
  57. perfmodels/sampling/bus/sirocco.config \
  58. perfmodels/sampling/bus/sirocco.latency \
  59. perfmodels/sampling/bus/sirocco.platform.xml \
  60. perfmodels/sampling/bus/sirocco.platform.v4.xml
  61. dist_pkgdata_perfmodels_sampling_codelets_DATA = \
  62. perfmodels/sampling/codelets/44/chol_model_11.attila \
  63. perfmodels/sampling/codelets/44/chol_model_21.attila \
  64. perfmodels/sampling/codelets/44/chol_model_22.attila \
  65. perfmodels/sampling/codelets/44/cl_update.attila \
  66. perfmodels/sampling/codelets/44/save_cl_bottom.attila \
  67. perfmodels/sampling/codelets/44/save_cl_top.attila \
  68. perfmodels/sampling/codelets/44/starpu_sgemm_gemm.attila \
  69. perfmodels/sampling/codelets/44/starpu_dgemm_gemm.attila \
  70. perfmodels/sampling/codelets/44/starpu_slu_lu_model_11.attila \
  71. perfmodels/sampling/codelets/44/starpu_slu_lu_model_12.attila \
  72. perfmodels/sampling/codelets/44/starpu_slu_lu_model_21.attila \
  73. perfmodels/sampling/codelets/44/starpu_slu_lu_model_22.attila \
  74. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_11.attila \
  75. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_12.attila \
  76. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_21.attila \
  77. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_22.attila \
  78. perfmodels/sampling/codelets/44/overlap_sleep_1024_24.attila \
  79. perfmodels/sampling/codelets/44/chol_model_11.idgraf \
  80. perfmodels/sampling/codelets/44/chol_model_21.idgraf \
  81. perfmodels/sampling/codelets/44/chol_model_22.idgraf \
  82. perfmodels/sampling/codelets/44/cl_update.idgraf \
  83. perfmodels/sampling/codelets/44/save_cl_bottom.idgraf \
  84. perfmodels/sampling/codelets/44/save_cl_top.idgraf \
  85. perfmodels/sampling/codelets/44/starpu_sgemm_gemm.idgraf \
  86. perfmodels/sampling/codelets/44/starpu_dgemm_gemm.idgraf \
  87. perfmodels/sampling/codelets/44/starpu_slu_lu_model_11.idgraf \
  88. perfmodels/sampling/codelets/44/starpu_slu_lu_model_12.idgraf \
  89. perfmodels/sampling/codelets/44/starpu_slu_lu_model_21.idgraf \
  90. perfmodels/sampling/codelets/44/starpu_slu_lu_model_22.idgraf \
  91. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_11.idgraf \
  92. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_12.idgraf \
  93. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_21.idgraf \
  94. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_22.idgraf \
  95. perfmodels/sampling/codelets/44/chol_model_11.mirage \
  96. perfmodels/sampling/codelets/44/chol_model_21.mirage \
  97. perfmodels/sampling/codelets/44/chol_model_22.mirage \
  98. perfmodels/sampling/codelets/44/cl_update.mirage \
  99. perfmodels/sampling/codelets/44/save_cl_bottom.mirage \
  100. perfmodels/sampling/codelets/44/save_cl_top.mirage \
  101. perfmodels/sampling/codelets/44/starpu_sgemm_gemm.mirage \
  102. perfmodels/sampling/codelets/44/starpu_dgemm_gemm.mirage \
  103. perfmodels/sampling/codelets/44/starpu_slu_lu_model_11.mirage \
  104. perfmodels/sampling/codelets/44/starpu_slu_lu_model_12.mirage \
  105. perfmodels/sampling/codelets/44/starpu_slu_lu_model_21.mirage \
  106. perfmodels/sampling/codelets/44/starpu_slu_lu_model_22.mirage \
  107. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_11.mirage \
  108. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_12.mirage \
  109. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_21.mirage \
  110. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_22.mirage \
  111. perfmodels/sampling/codelets/44/overlap_sleep_1024_24.mirage \
  112. perfmodels/sampling/codelets/44/chol_model_11.sirocco \
  113. perfmodels/sampling/codelets/44/chol_model_21.sirocco \
  114. perfmodels/sampling/codelets/44/chol_model_22.sirocco \
  115. perfmodels/sampling/codelets/44/cl_update.sirocco \
  116. perfmodels/sampling/codelets/44/save_cl_bottom.sirocco \
  117. perfmodels/sampling/codelets/44/save_cl_top.sirocco \
  118. perfmodels/sampling/codelets/44/starpu_sgemm_gemm.sirocco \
  119. perfmodels/sampling/codelets/44/starpu_dgemm_gemm.sirocco \
  120. perfmodels/sampling/codelets/44/starpu_slu_lu_model_11.sirocco \
  121. perfmodels/sampling/codelets/44/starpu_slu_lu_model_12.sirocco \
  122. perfmodels/sampling/codelets/44/starpu_slu_lu_model_21.sirocco \
  123. perfmodels/sampling/codelets/44/starpu_slu_lu_model_22.sirocco \
  124. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_11.sirocco \
  125. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_12.sirocco \
  126. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_21.sirocco \
  127. perfmodels/sampling/codelets/44/starpu_dlu_lu_model_22.sirocco \
  128. perfmodels/sampling/codelets/44/overlap_sleep_1024_24.sirocco
  129. EXTRA_DIST = \
  130. dev/checker/rename.sed \
  131. dev/checker/rename.sh \
  132. dev/cppcheck/suppressions.txt \
  133. dev/valgrind/fxt.suppr \
  134. dev/valgrind/hdf5.suppr \
  135. dev/valgrind/hwloc.suppr \
  136. dev/valgrind/libc.suppr \
  137. dev/valgrind/libgomp.suppr \
  138. dev/valgrind/libnuma.suppr \
  139. dev/valgrind/madmpi.suppr \
  140. dev/valgrind/opencl.suppr \
  141. dev/valgrind/openmpi.suppr \
  142. dev/valgrind/openmp.suppr \
  143. dev/valgrind/padico.suppr \
  144. dev/valgrind/pthread.suppr \
  145. dev/valgrind/starpu.suppr \
  146. dev/valgrind/valgrind.suppr \
  147. dev/valgrind/valgrind.sh \
  148. dev/valgrind/valgrind_xml.sh \
  149. dev/valgrind/helgrind.sh \
  150. dev/tsan/starpu.suppr \
  151. dev/lsan/libc.suppr \
  152. dev/lsan/openmpi.suppr \
  153. perfmodels/README \
  154. perfmodels/cluster.xml \
  155. perfmodels/hostfile \
  156. perfmodels/sampling/codelets/tmp/mlr_init.out \
  157. msvc/starpu_clean.bat \
  158. msvc/starpu_open.bat \
  159. msvc/starpu_exec.bat \
  160. msvc/starpu_var.bat \
  161. msvc/starpu.sln \
  162. msvc/starpu/starpu.vcxproj
  163. CLEANFILES = *.gcno *.gcda *.linkinfo starpu_idle_microsec.log figure/* mlr_*
  164. #####################################
  165. # What to install and what to check #
  166. #####################################
  167. STARPU_TOOLS =
  168. TESTS = $(STARPU_TOOLS)
  169. if STARPU_HAVE_WINDOWS
  170. check_PROGRAMS = $(STARPU_TOOLS)
  171. else
  172. check_PROGRAMS = $(LOADER) $(STARPU_TOOLS)
  173. endif
  174. if !STARPU_HAVE_WINDOWS
  175. ## test loader program
  176. if !STARPU_CROSS_COMPILING
  177. LOADER = loader
  178. loader_CPPFLAGS = $(AM_CFLAGS) $(AM_CPPFLAGS) -I$(top_builddir)/src/
  179. LOADER_BIN = $(abs_top_builddir)/tools/$(LOADER)
  180. loader_SOURCES = ../tests/loader.c
  181. else
  182. LOADER =
  183. LOADER_BIN = $(top_builddir)/tests/loader-cross.sh
  184. endif
  185. if STARPU_USE_MPI_MASTER_SLAVE
  186. LOADER_BIN2 = $(MPI_LAUNCHER) $(LOADER_BIN)
  187. else
  188. LOADER_BIN2 = $(LOADER_BIN)
  189. endif
  190. if STARPU_HAVE_AM111
  191. TESTS_ENVIRONMENT = $(MPI_RUN_ARGS) top_builddir="$(abs_top_builddir)" top_srcdir="$(abs_top_srcdir)"
  192. LOG_COMPILER = $(LOADER_BIN2)
  193. else
  194. TESTS_ENVIRONMENT = $(MPI_RUN_ARGS) top_builddir="$(abs_top_builddir)" top_srcdir="$(abs_top_srcdir)" $(LOADER_BIN2)
  195. endif
  196. endif
  197. if STARPU_USE_FXT
  198. bin_PROGRAMS += \
  199. starpu_fxt_tool \
  200. starpu_fxt_stats \
  201. starpu_fxt_data_trace
  202. STARPU_TOOLS += \
  203. starpu_fxt_tool \
  204. starpu_fxt_stats \
  205. starpu_fxt_data_trace
  206. starpu_fxt_tool_CPPFLAGS = $(AM_CFLAGS) $(AM_CPPFLAGS) $(FXT_CFLAGS)
  207. starpu_fxt_tool_LDADD = $(FXT_LIBS)
  208. starpu_fxt_tool_LDFLAGS = $(FXT_LDFLAGS)
  209. starpu_fxt_stats_CPPFLAGS = $(AM_CFLAGS) $(AM_CPPFLAGS) $(FXT_CFLAGS)
  210. starpu_fxt_stats_LDADD = $(FXT_LIBS)
  211. starpu_fxt_stats_LDFLAGS = $(FXT_LDFLAGS)
  212. starpu_fxt_data_trace_CPPFLAGS = $(AM_CFLAGS) $(AM_CPPFLAGS) $(FXT_CFLAGS)
  213. starpu_fxt_data_trace_LDADD = $(FXT_LIBS)
  214. starpu_fxt_data_trace_LDFLAGS = $(FXT_LDFLAGS)
  215. endif
  216. bin_PROGRAMS += \
  217. starpu_perfmodel_display \
  218. starpu_perfmodel_plot \
  219. starpu_calibrate_bus \
  220. starpu_machine_display \
  221. starpu_sched_display \
  222. starpu_tasks_rec_complete \
  223. starpu_lp2paje
  224. if STARPU_SIMGRID
  225. bin_PROGRAMS += \
  226. starpu_replay
  227. starpu_replay_SOURCES = \
  228. starpu_replay.c \
  229. starpu_replay_sched.c
  230. endif
  231. starpu_perfmodel_plot_CPPFLAGS = $(AM_CFLAGS) $(AM_CPPFLAGS) $(FXT_CFLAGS)
  232. if STARPU_LONG_CHECK
  233. STARPU_TOOLS += \
  234. starpu_calibrate_bus
  235. endif
  236. STARPU_TOOLS += \
  237. starpu_machine_display \
  238. starpu_sched_display
  239. if !STARPU_HAVE_WINDOWS
  240. STARPU_TOOLS += \
  241. starpu_perfmodel_display \
  242. starpu_perfmodel_plot
  243. endif
  244. dist_bin_SCRIPTS += \
  245. starpu_workers_activity \
  246. starpu_codelet_histo_profile \
  247. starpu_codelet_profile \
  248. starpu_paje_draw_histogram \
  249. starpu_paje_draw_histogram.R \
  250. starpu_paje_summary \
  251. starpu_paje_summary.Rmd \
  252. starpu_mlr_analysis \
  253. starpu_mlr_analysis.Rmd \
  254. starpu_paje_state_stats \
  255. starpu_trace_state_stats.py
  256. if STARPU_USE_AYUDAME2
  257. dist_bin_SCRIPTS += \
  258. starpu_temanejo2.sh
  259. dist_pkgdata_DATA += \
  260. ayudame.cfg
  261. endif
  262. if STARPU_HAVE_WINDOWS
  263. STARPU_MSVC_dir = $(bindir)
  264. nobase_STARPU_MSVC__DATA = \
  265. msvc/starpu_clean.bat \
  266. msvc/starpu_open.bat \
  267. msvc/starpu_exec.bat \
  268. msvc/starpu_var.bat \
  269. msvc/starpu.sln \
  270. msvc/starpu/starpu.vcxproj
  271. endif
  272. if STARPU_HAVE_HELP2MAN
  273. starpu_calibrate_bus.1: starpu_calibrate_bus$(EXEEXT)
  274. help2man --no-discard-stderr -N --output=$@ ./$<
  275. starpu_machine_display.1: starpu_machine_display$(EXEEXT)
  276. help2man --no-discard-stderr -N --output=$@ ./$<
  277. starpu_perfmodel_display.1: starpu_perfmodel_display$(EXEEXT)
  278. help2man --no-discard-stderr -N --output=$@ ./$<
  279. starpu_perfmodel_plot.1: starpu_perfmodel_plot$(EXEEXT)
  280. help2man --no-discard-stderr -N --output=$@ ./$<
  281. starpu_tasks_rec_complete.1: starpu_tasks_rec_complete$(EXEEXT)
  282. help2man --no-discard-stderr -N --output=$@ ./$<
  283. starpu_lp2paje.1: starpu_lp2paje$(EXEEXT)
  284. help2man --no-discard-stderr -N --output=$@ ./$<
  285. starpu_workers_activity.1: starpu_workers_activity
  286. chmod +x $<
  287. help2man --no-discard-stderr -N --output=$@ ./$<
  288. starpu_codelet_profile.1: starpu_codelet_profile
  289. chmod +x $<
  290. help2man --no-discard-stderr -N --output=$@ ./$<
  291. starpu_codelet_histo_profile.1: starpu_codelet_histo_profile
  292. chmod +x $<
  293. help2man --no-discard-stderr -N --output=$@ ./$<
  294. starpu_paje_draw_histogram.1: starpu_paje_draw_histogram
  295. chmod +x $<
  296. help2man --no-discard-stderr -N --output=$@ ./$<
  297. starpu_paje_state_stats.1: starpu_paje_state_stats
  298. chmod +x $<
  299. help2man --no-discard-stderr -N --output=$@ ./$<
  300. if STARPU_USE_FXT
  301. starpu_fxt_tool.1: starpu_fxt_tool$(EXEEXT)
  302. help2man --no-discard-stderr -N --output=$@ ./$<
  303. starpu_fxt_stats.1: starpu_fxt_stats$(EXEEXT)
  304. help2man --no-discard-stderr -N --output=$@ ./$<
  305. starpu_fxt_data_trace.1: starpu_fxt_data_trace$(EXEEXT)
  306. help2man --no-discard-stderr -N --output=$@ ./$<
  307. endif
  308. dist_man1_MANS =\
  309. starpu_calibrate_bus.1 \
  310. starpu_machine_display.1 \
  311. starpu_perfmodel_display.1 \
  312. starpu_perfmodel_plot.1 \
  313. starpu_tasks_rec_complete.1 \
  314. starpu_lp2paje.1 \
  315. starpu_workers_activity.1 \
  316. starpu_codelet_profile.1 \
  317. starpu_codelet_histo_profile.1 \
  318. starpu_paje_draw_histogram.1 \
  319. starpu_paje_state_stats.1
  320. if STARPU_USE_FXT
  321. dist_man1_MANS +=\
  322. starpu_fxt_tool.1 \
  323. starpu_fxt_stats.1 \
  324. starpu_fxt_data_trace.1
  325. endif
  326. clean-local:
  327. $(RM) $(dist_man1_MANS)
  328. endif
  329. if STARPU_SIMGRID
  330. dist_pkgdata_DATA += starpu_smpi.xslt
  331. dist_bin_SCRIPTS += starpu_smpirun
  332. endif