sgemm.sh 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. #!/bin/sh -x
  2. # StarPU --- Runtime system for heterogeneous multicore architectures.
  3. #
  4. # Copyright (C) 2018 Federal University of Rio Grande do Sul (UFRGS)
  5. # Copyright (C) 2017 CNRS
  6. # Copyright (C) 2017,2018-2020 Université de Bordeaux
  7. # Copyright (C) 2017 Inria
  8. #
  9. # StarPU is free software; you can redistribute it and/or modify
  10. # it under the terms of the GNU Lesser General Public License as published by
  11. # the Free Software Foundation; either version 2.1 of the License, or (at
  12. # your option) any later version.
  13. #
  14. # StarPU is distributed in the hope that it will be useful, but
  15. # WITHOUT ANY WARRANTY; without even the implied warranty of
  16. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  17. #
  18. # See the GNU Lesser General Public License in COPYING.LGPL for more details.
  19. #
  20. # Test parsing of FxT traces
  21. set -e
  22. # XXX: Also see tests/overlap/overlap.sh
  23. PREFIX=$(dirname $0)
  24. if [ -n "$STARPU_MIC_SINK_PROGRAM_PATH" ] ; then
  25. STARPU_MIC_SINK_PROGRAM_NAME=$STARPU_MIC_SINK_PROGRAM_PATH/sgemm
  26. # in case libtool got into play
  27. [ -x "$STARPU_MIC_SINK_PROGRAM_PATH/.libs/sgemm" ] && STARPU_MIC_SINK_PROGRAM_NAME=$STARPU_MIC_SINK_PROGRAM_PATH/.libs/sgemm
  28. fi
  29. STARPU_FXT_PREFIX=$PREFIX/ $PREFIX/sgemm
  30. [ ! -x $PREFIX/../../tools/starpu_perfmodel_display ] || $STARPU_LAUNCH $PREFIX/../../tools/starpu_perfmodel_display -s starpu_sgemm_gemm
  31. [ ! -x $PREFIX/../../tools/starpu_perfmodel_display ] || $STARPU_LAUNCH $PREFIX/../../tools/starpu_perfmodel_display -x -s starpu_sgemm_gemm
  32. [ ! -x $PREFIX/../../tools/starpu_perfmodel_recdump ] || $STARPU_LAUNCH $PREFIX/../../tools/starpu_perfmodel_recdump -o perfs.rec
  33. [ -f perfs.rec ]
  34. if [ -x $PREFIX/../../tools/starpu_fxt_tool ];
  35. then
  36. $STARPU_LAUNCH $PREFIX/../../tools/starpu_perfmodel_plot -s starpu_sgemm_gemm -i $PREFIX/prof_file_${USER}_0
  37. [ -f starpu_starpu_sgemm_gemm.gp -a -f starpu_starpu_sgemm_gemm.data -a -f starpu_starpu_sgemm_gemm.data ]
  38. # Generate paje, dag, data, etc.
  39. $STARPU_LAUNCH $PREFIX/../../tools/starpu_fxt_tool -memory-states -label-deps -i $PREFIX/prof_file_${USER}_0
  40. $PREFIX/../../tools/starpu_paje_sort paje.trace
  41. ! type pj_dump || pj_dump -e 0 < paje.trace
  42. $PREFIX/../../tools/starpu_codelet_profile distrib.data starpu_sgemm_gemm
  43. [ -f distrib.data.gp -a \( -f distrib.data.0 -o -f distrib.data.1 -o -f distrib.data.2 -o -f distrib.data.3 -o -f distrib.data.4 \) ]
  44. $STARPU_LAUNCH $PREFIX/../../tools/starpu_fxt_data_trace $PREFIX/prof_file_${USER}_0 starpu_sgemm_gemm
  45. [ -f data_trace.gp ]
  46. $STARPU_LAUNCH $PREFIX/../../tools/starpu_fxt_stats -i $PREFIX/prof_file_${USER}_0
  47. $STARPU_LAUNCH $PREFIX/../../tools/starpu_tasks_rec_complete tasks.rec tasks2.rec
  48. python $PREFIX/../../tools/starpu_trace_state_stats.py trace.rec
  49. $PREFIX/../../tools/starpu_workers_activity activity.data
  50. [ -f activity.eps ]
  51. # needs some R packages
  52. $PREFIX/../../tools/starpu_paje_draw_histogram paje.trace || true
  53. $PREFIX/../../tools/starpu_paje_state_stats paje.trace || true
  54. $PREFIX/../../tools/starpu_paje_summary paje.trace || true
  55. $PREFIX/../../tools/starpu_codelet_histo_profile distrib.data || true
  56. [ -f distrib.data.starpu_sgemm_gemm.0.a3d3725e.1024.pdf ] || true
  57. if [ -x $PREFIX/../../tools/starpu_replay ]; then
  58. $STARPU_LAUNCH $PREFIX/../../tools/starpu_replay tasks.rec
  59. fi
  60. [ ! -x $PREFIX/../../tools/starpu_perfmodel_recdump ] || $STARPU_LAUNCH $PREFIX/../../tools/starpu_perfmodel_recdump tasks.rec -o perfs2.rec
  61. [ -f perfs2.rec ]
  62. fi